IP Library Granted Patent US 9,201,633
Granted Patent B2
US 9,201,633 · App. 13/958,138 · Granted Dec 1, 2015

Creation and deployment of RESTful web services in a graphical programming language

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,201,633
App. No.
13/958,138
Granted
Dec 1, 2015
Kind
B2
Abstract

Method and memory medium for generating a web service. A plurality of graphical data flow programs may be provided, and user input selecting one or more of plurality of graphical data flow programs for inclusion in a web service may be received, The web service may be generated based on the one or more graphical data flow programs. Each graphical data flow program may implement a respective web method, where each web method may implement or request a respective action. The web service may be deployable to a server for hosting, where the web service is invocable over a network to perform the corresponding one or more web methods.

Claims (56)

1. A method for generating a web service, the method comprising:

utilizing a computer to perform:

displaying a node representing a new web service in a graphical user interface (GUI) in response to user input invoking initial creation of the new web service;

displaying a plurality of sub nodes in the GUI hierarchically below the node representing the web service, wherein the plurality of sub nodes includes:

at least one sub node that represents startup resources, configured to perform initialization and communication with one or more web methods for the web service; and

at least one sub node that represents web resources, configured for inclusion in the web service, wherein the web resources implement the one or more web methods for the web service;

including one or more graphical data flow programs in the at least one sub node, in response to user input selecting the one or more graphical data flow programs for inclusion in the web service, wherein each graphical data flow program comprises a plurality of interconnected nodes that visually indicate functionality of the graphical data flow program, wherein each graphical data flow program implements a respective startup resource or a respective web method that implements or requests a respective action, and wherein at least one of the selected one or more graphical data flow programs implements a startup resource; and

generating the web service based at least in part on the selected one or more graphical data flow programs, wherein the web service is deployable to a server for hosting, wherein the web service is invocable over a network to perform the one or more web methods.

2. The method of claim 1 , wherein the web service comprises a Representational State Transfer (REST) software architecture.

3. The method of claim 1 , wherein said generating the web service comprises compiling the selected one or more graphical data flow programs.

4. The method of claim 3 , further comprising:

utilizing the computer to perform:

receiving user input specifying a platform for said compiling, wherein said compiling comprises compiling the selected one or more graphical data flow programs for compatibility with the platform specified.

5. The method of claim 4 , wherein the platform specified is a real-time target comprising a real-time operating system.

6. The method of claim 3 , wherein said compiling comprises compiling the selected one or more graphical data flow programs for cross-platform compatibility.

7. The method of claim 1 , further comprising:

utilizing the computer to perform:

in response to the user input invoking initial creation of a new web service:

providing and displaying at least one sub node representing static resources in the GUI hierarchically below the node representing the web service, wherein the static resources comprise one or more of:

public content, comprising at least one file to be made accessible to clients by the web service; or

private content, comprising at least one file that is not made accessible to clients by the web service.

8. The method of claim 1 , wherein said generating the web service further comprises generating an installer for the web service.

9. The method of claim 1 , further comprising:

utilizing the computer to perform:

including the web service and an executable program in an installer, wherein the installer is executable to install the web service and the executable program, and wherein the executable program and the web service are configured to operate in conjunction.

10. A non-transitory computer-accessible memory medium that stores program instructions executable by a processor to perform:

displaying a node representing a new web service in a graphical user interface (GUI) in response to user input invoking initial creation of the new web service;

displaying a plurality of sub nodes in the GUI hierarchically below the node representing the web service, wherein the plurality of sub nodes includes:

at least one sub node that represents startup resources, configured to perform initialization and communication with one or more web methods for the web service; and

at least one sub node that represents web resources, configured for inclusion in the web service, wherein the web resources implement the one or more web methods for the web service;

including one or more graphical data flow programs in the at least one sub node, in response to user input selecting the one or more graphical data flow programs for inclusion in the web service, wherein each graphical data flow program comprises a plurality of interconnected nodes that visually indicate functionality of the graphical data flow program, wherein each graphical data flow program implements a respective startup resource or a respective web method that implements or requests a respective action, and wherein at least one of the selected one or more graphical data flow programs implements a startup resource; and

generating the web service based at least in part on the selected one or more graphical data flow programs, wherein the web service is deployable to a server for hosting, wherein the web service is invocable over a network to perform the one or more web methods.

11. The non-transitory computer-accessible memory medium of claim 10 , wherein the web service comprises a Representational State Transfer (REST) software architecture.

12. The non-transitory computer-accessible memory medium of claim 10 , wherein said generating the web service comprises compiling the selected one or more graphical data flow programs.

13. The non-transitory computer-accessible memory medium of claim 12 , wherein the program instructions are further executable to perform:

receiving user input specifying a platform for said compiling, wherein said compiling comprises compiling the selected one or more graphical data flow programs for compatibility with the platform specified.

14. The non-transitory computer-accessible memory medium of claim 13 , wherein the platform specified is a real-time target comprising a real-time operating system.

15. The non-transitory computer-accessible memory medium of claim 12 , wherein said compiling comprises compiling the selected one or more graphical data flow programs for cross-platform compatibility.

16. The non-transitory computer-accessible memory medium of claim 10 , wherein the program instructions are further executable to perform:

in response to the user input invoking initial creation of a new web service:

displaying at least one sub node representing static resources in the GUI hierarchically below the node representing the web service, wherein the static resources comprise one or more of:

public content, comprising at least one file to be made accessible to clients by the web service; or

private content, comprising at least one file that is not made accessible to clients by the web service.

17. The non-transitory computer-accessible memory medium of claim 10 , wherein said generating the web service further comprises generating an installer for the web service.

18. The non-transitory computer-accessible memory medium of claim 10 , wherein the program instructions are further executable to perform:

including the web service and an executable program in an installer, wherein the installer is executable to install the web service and the executable program, and wherein the executable program and the web service are configured to operate in conjunction.

19. A system, comprising:

a processor; and

a memory, coupled to the processor, wherein the memory stores program instructions executable by the processor to:

display a node representing a new web service in a graphical user interface (GUI) in response to user input invoking initial creation of the new web service;

display a plurality of sub nodes in the GUI hierarchically below the node representing the web service, wherein the plurality of sub nodes includes:

at least one sub node that represents startup resources, configured to perform initialization and communication with one or more web methods for the web service; and

at least one sub node that represents web resources, configured for inclusion in the web service, wherein the web resources implement the one or more web methods for the web service;

include one or more graphical data flow programs in the at least one sub node, in response to user input selecting the one or more graphical data flow programs for inclusion in the web service, wherein each graphical data flow program comprises a plurality of interconnected nodes that visually indicate functionality of the graphical data flow program, wherein each graphical data flow program implements a respective startup resource or a respective web method that implements or requests a respective action, and wherein at least one of the selected one or more graphical data flow programs implements a startup resource; and

generate the web service based at least in part on the selected one or more graphical data flow programs, wherein the web service is deployable to a server for hosting, wherein the web service is invocable over a network to perform the one or more web methods.

20. The system of claim 19 , wherein the web service comprises a Representational State Transfer (REST) software architecture.

Assignments (5)
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 057280/0028) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION
Reel/Frame 065231/0466 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 052935/0001) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
Reel/Frame 065653/0463 →
SECURITY INTEREST Recorded Jun 18, 2021
From: NATIONAL INSTRUMENTS CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 057280/0028 →
SECURITY INTEREST Recorded Jun 14, 2020
From: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 052935/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 2, 2013
From: KALAPATI, CHARLES A.; SPANGLER, PAUL A.; WINSTON, JARED A.
To: NATIONAL INSTRUMENTS CORPORATION
Reel/Frame 030934/0384 →