-
Notifications
You must be signed in to change notification settings - Fork 37
Functions
The following functions are already implemented:
- installDevonIde
- installCobiGen
- cobiGenJava
- createDevon4jProject
- buildJava
- createFile
- changeFile
- cloneRepository
- runServerJava
- The tools you want to install within the devonfw ide: string array
- Optional: The version of the ide to install
installDevonfwIde(["java","mvn"], "2020.08.001")
- The tools you want to install within the devonfw ide: string array
- Optional: The version of the ide to install
restoreDevonfwIde(["java","mvn"], "2020.08.001")
In the Katacoda environment the installation of the devonfw IDE is executed in a startup script.
- No parameters
installCobiGen()
- The path to the java file you want to generate code for: string
- The numbers that represent the templates that CobiGen uses to generate code: int array
cobiGenJava("path/to/java/file/MyEntity.java",[1,3,5,6,8])
Number | Description |
---|---|
1 | CRUD logic: Generates the logic layer and implementations for some use cases. |
3 | CRUD REST services: Generates the service layer with CRUD operations for using in REST services. |
5 | TO's: Generates the related Transfer Objects. |
6 | Entity infrastructure: Creates the entity main interface and edits (by a merge) the current entity to extend the newly generated classes. |
8 | CRUD SpringData Repository: Generates the entity repository (that contains the CRUD operations) in the data access layer. |
- The project name
createDevon4jProject("cobigenexample")
- The project directory
- (Optional) Indicator whether tests should be run. Default is false.
buildJava("cobigenexample", true)
- Path of the file to be created (relative path to the workspace directory)
- (Optional) Path of the file to get the content from. Relative to the playbook directory
createFile("cobigenexample/core/src/main/java/com/example/application/cobigenexample/customermanagement/dataaccess/api/CustomerEntity.java", "files/CustomerEntity.java")
- Path of the file to be changed (relative path to the workspace directory)
- path of the file to get the content from or a string, that should be inserted.
- (Optional) Name of a placeholder
changeFile("cobigenexample/core/src/main/java/com/example/application/cobigenexample/customermanagement/dataaccess/api/CustomerEntity.java", { "file": "files/Placeholder.java", "placeholder": "private static final long serialVersionUID = 1L;" })
If you want to add content from a file: {"file": "[path]"} If you want to add a string to a file: {"content": "[string]"}
If you want to insert content into your code between two existing lines, take the previous line as your placeholder. Add your placeholder into the new file or string, otherwise it will be replaced entirely.
example:{...,"placeholder": "private int age;"}
Before | Content or File | After |
---|---|---|
private int age; |
private int age; |
private int age; |
A placeholder is optional. If you do not define a placeholder, the content in the existing file will be simply replaced by the new content.
Please try not to use custom placeholders. Keep in mind that you might want to build the project before changing them. Custom placeholders with a comment-syntax (e.g. "//PLACEHOLDER") will be removed by the console-environment and others might cause errors.
- Path into which the repository is to be cloned, relative to workspace.
- Git repository URL
cloneRepository("", "https://github.com/devonfw-forge/tutorial-compiler.git") Repository will be cloned directly into the workspace directory.
cloneRepository("devonfw-forge", "https://github.com/devonfw-forge/tutorial-compiler.git") Repository will be cloned into a newly created subdirectory devonfw-forge.
- Path to the server directory within the java project.
- Assertion information. Only needed for the console runner to check if the server was started properly.
runServerJava("devonfw/workspaces/main/jump-the-queue/java/jtqj/server", { "startupTime": 40, "port": 8081, "path": "jumpthequeue" })
startupTime = Time in seconds to wait before checking if the server is running port: Port on which the server is running path: The URL path on which is checked if the server is running