Akwatype provides a number of standard properties to qualify the objects of its models.
However, each project or organization has its own needs and Akwatype has the custom properties to meet them.
A custom property is defined by its name and the following properties
- type (String)
- Type of the values of this property (String, Integer, Boolean...)
- values (List - depends on the type of property)
- Lists of possible values for this property
- This list of values allows to check the validity of the values entered when using this property
- it also allows to feed the completion of the editor which will automatically propose the list of possible values during the input
- Lists of possible values for this property
- openAPI (boolean)
- if true, the custom property will be included in the OpenAPI extension of akwatype when generating the OpenAPI description
- x-akwatype-custom-properties
- if true, the custom property will be included in the OpenAPI extension of akwatype when generating the OpenAPI description
Once declared, a custom property is used as a standard Akwatype property.
Concerning the exchange model Akwatype has :
- customServiceProperty
- customResourceProperty
- customRouteProperty
- customTopicProperty
- customMessageProperty
- customContainerProperty
Example :
customServiceProperty myServicePropertie { type: String values:["S1","S2"], openAPI: true } customRouteProperty myRoutePropertie { type: Integer values:[10,20,30] } service Demo{ label:"Demonstration service" url:"demo" myServicePropertie: "S1" expose Vehicle{ url:"vehicles" route vehicle{ url:"vehicle" response:Vehicle myRoutePropertie: 10 } } }