Patents by Inventor Dónal Carpenter
Dónal Carpenter 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: 11593799Abstract: A method is provided for recording purchase transactions, including: receiving a purchase order request that is associated with a purchase order, the purchase order request being received from a purchaser-side system, the purchase order request including purchase information identifying a product, a product quantity, and a first order identifier that is assigned to the purchase order by the purchaser-side system; generating a transaction document in response to the purchase order request, including the purchase information into the transaction document, and recording the transaction document in a document sharing platform or shared cryptographically protected ledger; and progressively updating the transaction document with information provided by the purchaser-side system and a seller-side system as the purchase order is being fulfilled, wherein each update to the transaction document is recorded in the cryptographically protected ledger.Type: GrantFiled: February 1, 2019Date of Patent: February 28, 2023Assignee: EMC IP Holding Company LLCInventors: Donal Carpenter, Carlos Martins Rodrigues, Tomislav Lokas
-
Patent number: 11467912Abstract: Techniques are provided for feature toggle management with application behavior point-in-time restoration using event sourcing. One method comprises maintaining feature toggle events for features of an application, wherein each feature toggle event comprises an indication of an event time of the respective feature toggle event for a given feature; receiving a request to execute the application with feature toggle settings associated with an indicated point-in-time; and initiating an execution of the application with the feature toggle settings associated with the indicated point-in-time by processing the feature toggle events having an event time up to the indicated point-in-time. Event sourcing techniques may be employed to store the plurality of feature toggle events for the plurality of features in an event repository.Type: GrantFiled: October 22, 2020Date of Patent: October 11, 2022Assignee: Dell Products L.P.Inventors: Donal Carpenter, Stephen Dunne, Arun Muthukumar
-
Patent number: 11392372Abstract: Techniques are provided for identifying dependencies among multiple software entities. One exemplary method comprises scanning source code and/or configuration information of a given software entity to extract connection information for connections made by the given software entity with other software entities, wherein at least one connection made by the given software entity is an asynchronous connection that employs asynchronous messaging using an intermediate message broker; resolving at least one uniform resource identifier in the extracted connection information to obtain a corresponding network address; analyzing the source code associated with the asynchronous connection to determine whether the given software entity is a producer or a consumer associated with the asynchronous connection; and generating a dependency graph identifying a plurality of the other software entities that depend on the given software entity.Type: GrantFiled: February 15, 2018Date of Patent: July 19, 2022Assignee: Dell Products L.P.Inventors: Dónal Carpenter, Adam Jasinski, Zygimantas Mockus, Carlos Manuel dos Santos Martins Rodrigues
-
Publication number: 20220129351Abstract: Techniques are provided for feature toggle management with application behavior point-in-time restoration using event sourcing. One method comprises maintaining feature toggle events for features of an application, wherein each feature toggle event comprises an indication of an event time of the respective feature toggle event for a given feature; receiving a request to execute the application with feature toggle settings associated with an indicated point-in-time; and initiating an execution of the application with the feature toggle settings associated with the indicated point-in-time by processing the feature toggle events having an event time up to the indicated point-in-time. Event sourcing techniques may be employed to store the plurality of feature toggle events for the plurality of features in an event repository.Type: ApplicationFiled: October 22, 2020Publication date: April 28, 2022Inventors: Donal Carpenter, Stephen Dunne, Arun Muthukumar
-
Publication number: 20210295396Abstract: Systems and methods display reviews of products and/or services that are most demographically congruous with the individual seeking those reviews. An individual selects a product for which reviews are to be shown. The system and method form a graph having nodes representing the individual, product reviewers, demographic characteristics, reviewed products, and product reviews. The system and method then determine demographic closeness in the graph between nodes of the individual and those of each reviewer of the selected product, where the individual may be connected to a reviewer either by a common demographic characteristic or through such a characteristic associated with another product reviewed by that reviewer. The system and method use these values to compute a demographic congruity (DC) score for each reviewer, and rank the reviews for display according to these DC scores. Statistics may be compiled for reviewers with DC scores exceeding a given threshold.Type: ApplicationFiled: March 17, 2020Publication date: September 23, 2021Applicant: Dell Products L.P.Inventors: Donal Carpenter, Mahuya Ghosh
-
Patent number: 11093349Abstract: An information handling system stores logs in a volatile log buffer for a pre-determined time, and monitors the logs in the log buffer in real-time. The system parses the logs to detect a triggering event, wherein the triggering event is one of an error event, a fatal event, or a critical event. In response to detecting the triggering event, the system stores debug level logs in a non-volatile storage device. If the predetermined time is reached, then the system determines whether to discard the logs or to store the logs in the non-volatile storage device. In response to a determination to discard the logs, the logs in the log buffer may be discarded.Type: GrantFiled: April 24, 2019Date of Patent: August 17, 2021Assignee: Dell Products L.P.Inventors: Dónal Carpenter, Carlos Martins Rodrigues
-
Patent number: 11080108Abstract: A method, system and computer-usable medium are disclosed for implementing a machine learning system for using adaptive interrupts to control notifications to a user. In at least one embodiment, a computer-implemented method for adaptively interrupting a user with communication notifications at an information handling system is disclosed, including: receiving a communication for a user at the information handling system; intercepting a notification relating to the received communication; assessing a degree of importance of the notification using contextual information associated with the notification; assessing a degree of busyness of the user at the information handling system by actively monitoring interactions between the user and the information handling system; and selectively interrupting the user with the notification based on the busyness of the user at the information handling system and the degree of importance of the notification.Type: GrantFiled: October 31, 2019Date of Patent: August 3, 2021Assignee: Dell Products L.P.Inventors: Mahuya Ghosh, Donal Carpenter
-
Publication number: 20210133007Abstract: A method, system and computer-usable medium are disclosed for implementing a machine learning system for using adaptive interrupts to control notifications to a user. In at least one embodiment, a computer-implemented method for adaptively interrupting a user with communication notifications at an information handling system is disclosed, including: receiving a communication for a user at the information handling system; intercepting a notification relating to the received communication; assessing a degree of importance of the notification using contextual information associated with the notification; assessing a degree of busyness of the user at the information handling system by actively monitoring interactions between the user and the information handling system; and selectively interrupting the user with the notification based on the busyness of the user at the information handling system and the degree of importance of the notification.Type: ApplicationFiled: October 31, 2019Publication date: May 6, 2021Applicant: Dell Products L.P.Inventors: Mahuya Ghosh, Donal Carpenter
-
Publication number: 20200341868Abstract: An information handling system stores logs in a volatile log buffer for a pre-determined time, and monitors the logs in the log buffer in real-time. The system parses the logs to detect a triggering event, wherein the triggering event is one of an error event, a fatal event, or a critical event. In response to detecting the triggering event, the system stores debug level logs in a non-volatile storage device. If the predetermined time is reached, then the system determines whether to discard the logs or to store the logs in the non-volatile storage device. In response to a determination to discard the logs, the logs in the log buffer may be discarded.Type: ApplicationFiled: April 24, 2019Publication date: October 29, 2020Inventors: Dónal Carpenter, Carlos Martins Rodrigues
-
Patent number: 10783472Abstract: Some examples include a service to receive a job request that includes a job, a priority of the job, and a callback that identifies an application to execute the job. The application may be hosted by a particular virtual machine of a plurality of virtual machines being executed in a cloud hosting facility. The service may add the job request to a queue and determine, using a machine learning algorithm, a risk score associated with the job. Based at least in part on the risk score, the service may send a provisioning request to the cloud hosting facility to provision one or more additional virtual machines. After determining that the application has completed executing the job, the service may send a de-provisioning request to the cloud hosting facility to de-provision at least one virtual machine of the one or more additional virtual machines.Type: GrantFiled: October 31, 2017Date of Patent: September 22, 2020Assignee: Dell Products L.P.Inventors: Dónal Carpenter, Mahuya Ghosh
-
Publication number: 20200250662Abstract: A method is provided for recording purchase transactions, including: receiving a purchase order request that is associated with a purchase order, the purchase order request being received from a purchaser-side system, the purchase order request including purchase information identifying a product, a product quantity, and a first order identifier that is assigned to the purchase order by the purchaser-side system; generating a transaction document in response to the purchase order request, including the purchase information into the transaction document, and recording the transaction document in a document sharing platform or shared cryptographically protected ledger; and progressively updating the transaction document with information provided by the purchaser-side system and a seller-side system as the purchase order is being fulfilled, wherein each update to the transaction document is recorded in the cryptographically protected ledger.Type: ApplicationFiled: February 1, 2019Publication date: August 6, 2020Applicant: EMC IP Holding Company LLCInventors: Donal Carpenter, Carlos Martins Rodrigues, Tomislav Lokas
-
Patent number: 10728181Abstract: A method and an information handling system (IHS) transform an initial message having an identified protocol format to an encapsulated message having an advanced message queuing protocol (AMQP) format. A dynamic message brokering (DMB) module interacts with an AMQP client application to generate a binding key and a routing key corresponding to message attributes of the initial message. The DMB module dynamically applies one or more of the binding key and the routing key to respective programming command modules, including a provider module, to generate an AMQP client message which is forwarded to an AMQP server. The AMQP server creates a queue for messages having attributes that are identifiable within the received client message, and uses the binding key to bind the queue to a specified exchange. The AMQP server routes the received client message to the queue, using the routing key, enabling subscribers to retrieve the messages.Type: GrantFiled: March 27, 2017Date of Patent: July 28, 2020Assignee: Dell Products, L.P.Inventor: Donal Carpenter
-
Patent number: 10630399Abstract: A method for testing a distributed application. The method includes receiving the automation test code and initiating execution of the automation test code. A responsive event provided by at least one distributed application node, in response to execution of the automation test code is detected. One or more messages having a specified routing key are received as the responsive event. A queue for receiving the one or more messages generated on an advanced message queuing protocol message broker. A test context specific binding key having a known entity identifier and the specified routing key is selectively generated to form a bind between the queue and an established exchange. The one or more messages having a payload that selectively indicates the nature of the state change associated with the predetermined distributed event type are received at the queue. The one or more messages are selectively provided to a requesting device having access to the queue.Type: GrantFiled: May 5, 2017Date of Patent: April 21, 2020Assignee: Dell Products, L.P.Inventor: Donal Carpenter
-
Patent number: 10536162Abstract: A method and information handling system (IHS) converts a globally unique identifier to an electronic data interchange document identifier. The method includes receiving a globally unique identifier and converting the globally unique identifier into 128 binary bits. The 128 binary bits are selectively separated to form groups of bits that translate to integers. Each integer is replaced with an assigned alphanumeric character selected from an alphanumeric character map to form an encoded alphanumeric string of characters for use as an electronic data interchange document identifier.Type: GrantFiled: January 30, 2017Date of Patent: January 14, 2020Assignee: Dell Products, L.P.Inventor: Donal Carpenter
-
Patent number: 10379849Abstract: Methods, apparatus and computer program products are provided for the visualization of software execution. One method comprises: generating, using a static code analysis, a data flow diagram illustrating a plurality of possible code execution paths of software code; marking, using an execution profiler, a particular execution path through the data flow diagram for a specific execution scenario; and enriching one or more nodes in the data flow diagram marked with the particular execution path for the specific execution scenario with information extracted from one or more application logs. The marked data flow diagram may be enriched, for example, by extracting a particular portion of a log file and tagging a corresponding portion of the data flow diagram with the extracted particular portion of the log file. The extracted log information may comprise, for example, a timestamp, a log category, a software module name, a function name and/or contextual information.Type: GrantFiled: February 1, 2018Date of Patent: August 13, 2019Assignee: Dell Products L.P.Inventors: Adam Jasinski, Carlos Manuel dos Santos Martins Rodrigues, Donal Carpenter, Zygimantas Mockus
-
Publication number: 20190130327Abstract: Some examples include a service to receive a job request that includes a job, a priority of the job, and a callback that identifies an application to execute the job. The application may be hosted by a particular virtual machine of a plurality of virtual machines being executed in a cloud hosting facility. The service may add the job request to a queue and determine, using a machine learning algorithm, a risk score associated with the job. Based at least in part on the risk score, the service may send a provisioning request to the cloud hosting facility to provision one or more additional virtual machines. After determining that the application has completed executing the job, the service may send a de-provisioning request to the cloud hosting facility to de-provision at least one virtual machine of the one or more additional virtual machines.Type: ApplicationFiled: October 31, 2017Publication date: May 2, 2019Inventors: Dónal Carpenter, Mahuya Ghosh
-
Publication number: 20180324222Abstract: A method for testing a distributed application. The method includes receiving the automation test code and initiating execution of the automation test code. A responsive event provided by at least one distributed application node, in response to execution of the automation test code is detected. One or more messages having a specified routing key are received as the responsive event. A queue for receiving the one or more messages generated on an advanced message queuing protocol message broker. A test context specific binding key having a known entity identifier and the specified routing key is selectively generated to form a bind between the queue and an established exchange. The one or more messages having a payload that selectively indicates the nature of the state change associated with the predetermined distributed event type are received at the queue. The one or more messages are selectively provided to a requesting device having access to the queue.Type: ApplicationFiled: May 5, 2017Publication date: November 8, 2018Inventor: DONAL CARPENTER
-
Publication number: 20180278551Abstract: A method and an information handling system (IHS) transform an initial message having an identified protocol format to an encapsulated message having an advanced message queuing protocol (AMQP) format. A dynamic message brokering (DMB) module interacts with an AMQP client application to generate a binding key and a routing key corresponding to message attributes of the initial message. The DMB module dynamically applies one or more of the binding key and the routing key to respective programming command modules, including a provider module, to generate an AMQP client message which is forwarded to an AMQP server. The AMQP server creates a queue for messages having attributes that are identifiable within the received client message, and uses the binding key to bind the queue to a specified exchange. The AMQP server routes the received client message to the queue, using the routing key, enabling subscribers to retrieve the messages.Type: ApplicationFiled: March 27, 2017Publication date: September 27, 2018Inventor: DONAL CARPENTER
-
Publication number: 20180219964Abstract: A method and information handling system (IHS) converts a globally unique identifier to an electronic data interchange document identifier. The method includes receiving a globally unique identifier and converting the globally unique identifier into 128 binary bits. The 128 binary bits are selectively separated to form groups of bits that translate to integers. Each integer is replaced with an assigned alphanumeric character selected from an alphanumeric character map to form an encoded alphanumeric string of characters for use as an electronic data interchange document identifier.Type: ApplicationFiled: January 30, 2017Publication date: August 2, 2018Inventor: DONAL CARPENTER