@cloudops/generator-cloudmc-plugin
v0.4.5
Published
Generate the template for a CloudMC Service Plugin
Downloads
4
Readme
generator-cloudmc-plugin
Generate a CloudMC Service Plugin template
Installation
First, install Yeoman and generator-cloudmc-plugin using npm (we assume you have pre-installed node.js).
npm install -g yo
npm install -g @cloudops/generator-cloudmc-plugin
Then generate your new project:
yo @cloudops/cloudmc-plugin
Sub-generators (in beta mode)
Entity generator
Generates a new service entity, the Fetcher
and the ListViewBuilder
for this entity. You only need to specify a name and the fields you want in the entity.
- Navigate to the package directory where you want the new entity to be created
(e.g.: ~/cloudmc-todoist-plugin/src/main/java/com/cloudops/mc/plugin) - Run the generator as follows
> yo @cloudops/cloudmc-plugin:entity
? Entity Name (e.g.: Instance): Project
_-----_ ╭──────────────────────────╮
| | │ [id] and [name] fields │
|--(o)--| │ are added to the new │
`---------´ │ entity - Project - by │
( _´U`_ ) │ default │
/___A___\ /╰──────────────────────────╯
| ~ |
__'.___.'__
´ ` |° ´ Y `
? Do you want to add a field (e.g.: networkId, cpus)? Yes
? Field name: parentId
? Field type: (Use arrow keys)
❯ UUID
String
int
boolean
Long
float
Date
(Move up and down to reveal more choices)
? Do you want to add a field (e.g.: networkId, cpus)? No
_-----_ ╭──────────────────────────╮
| | │ Generated new entity │
|--(o)--| │ Project with classes for │
`---------´ │ its Fetcher and ListView │
( _´U`_ ) ╰──────────────────────────╯
/___A___\ /
| ~ |
__'.___.'__
´ ` |° ´ Y `
Operation generator
Generates the Operation
and the ViewBuilder
classes for an operation on a selected entity. You only need to specify the name of the operation.
- Navigate to any directory in the project where there is an entity class annotated with
@Entity
(e.g.: ~/cloudmc-todoist-plugin/src/main/java/com/cloudops/mc/plugin/project) - Run the generator as follows
> yo @cloudops/cloudmc-plugin:operation
? Operation (e.g.: create, addNetwork): create
? Is it an operation for a CRUD action (i.e.: CREATE, DELETE, UPDATE)? Yes
? What is the specific CRUD operation? (Use arrow keys)
❯ CREATE
DELETE
UPDATE
NONE
_-----_ ╭──────────────────────────╮
| | │ Generated classes for │
|--(o)--| │ operation [Create] on │
`---------´ │ entity [Project] │
( _´U`_ ) ╰──────────────────────────╯
/___A___\ /
| ~ |
__'.___.'__
´ ` |° ´ Y `
? Operation (e.g.: create, addNetwork): setAsRecurring
? Is it an operation for a CRUD action (i.e.: CREATE, DELETE, UPDATE)? No
_-----_ ╭──────────────────────────╮
| | │ Generated classes for │
|--(o)--| │ operation │
`---------´ │ [SetAsRecurring] on │
( _´U`_ ) │ entity [Project] │
/___A___\ /╰──────────────────────────╯
| ~ |
__'.___.'__
´ ` |° ´ Y `
Getting To Know Yeoman
- Yeoman has a heart of gold.
- Yeoman is a person with feelings and opinions, but is very easy to work with.
- Yeoman can be too opinionated at times but is easily convinced not to be.
- Feel free to learn more about Yeoman.
License
© CloudOps Inc.