mirror of
https://github.com/OpenAPITools/openapi-generator.git
synced 2025-05-12 20:50:55 +00:00
[Ada] Hotfix/ada model sort (#7491)
* Ada generator generates "=>" (correct syntax) instead of "->". Fixes #7450 * Updated the Ada petstore samples * Committing "VERSION" file and the rest of the petstore samples * Redone the algorithm to sort the models by their dependencies, to create correct *-model.ads files. To fix #7485 * changed tabs into spaces
This commit is contained in:
parent
d1933b5fca
commit
3035bc629b
@ -459,32 +459,6 @@ abstract public class AbstractAdaCodegen extends DefaultCodegen implements Codeg
|
|||||||
return objs;
|
return objs;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Check if type1 depends on type2 recursively.
|
|
||||||
*
|
|
||||||
* @param type1 first model type name
|
|
||||||
* @param type2 second model type name
|
|
||||||
* @return true if type1 depends on type2
|
|
||||||
*/
|
|
||||||
private Boolean dependsOn(String type1, String type2) {
|
|
||||||
final String fullTypeName = modelPackage + ".Models." + type2;
|
|
||||||
if (type1.equals(type2) || type1.equals(fullTypeName)) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
final List<String> lhsList = modelDepends.get(type1);
|
|
||||||
if (lhsList != null) {
|
|
||||||
for (final String S : lhsList) {
|
|
||||||
if (S.equals(type2) || S.equals(fullTypeName)) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
if (dependsOn(S, type2)) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Map<String, Object> postProcessModels(Map<String, Object> objs) {
|
public Map<String, Object> postProcessModels(Map<String, Object> objs) {
|
||||||
// Collect the model dependencies.
|
// Collect the model dependencies.
|
||||||
@ -509,53 +483,55 @@ abstract public class AbstractAdaCodegen extends DefaultCodegen implements Codeg
|
|||||||
}
|
}
|
||||||
p.vendorExtensions.put("x-is-model-type", isModel);
|
p.vendorExtensions.put("x-is-model-type", isModel);
|
||||||
}
|
}
|
||||||
modelDepends.put(m.classname, d);
|
// let us work with fully qualified names only
|
||||||
modelDepends.put(modelPackage + ".Models." + m.classname, d);
|
modelDepends.put(modelPackage + ".Models." + m.classname, d);
|
||||||
orderedModels.add(model);
|
orderedModels.add(model);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Sort the models according to dependencies so that model that depend
|
// Sort models using dependencies:
|
||||||
// on others appear at end of the list.
|
// List revisedOrderedModels <- ()
|
||||||
final Map<String, List<String>> deps = modelDepends;
|
// if you have N model, do N passes. In each pass look for an independent model
|
||||||
Collections.sort(orderedModels, new Comparator<Map<String, Object>>() {
|
// cycle over orderedModels
|
||||||
@Override
|
// if I find a model that has no dependencies, or all of its dependencies are in revisedOrderedModels, consider it the independentModel
|
||||||
public int compare(Map<String, Object> lhs, Map<String, Object> rhs) {
|
// put the independentModel at the end of revisedOrderedModels, and remove it from orderedModels
|
||||||
Object v = lhs.get("model");
|
//
|
||||||
String lhsName = ((CodegenModel) v).classname;
|
List<Map<String, Object>> revisedOrderedModels = new ArrayList<Map<String, Object>>();
|
||||||
v = rhs.get("model");
|
List<String> collectedModelNames = new ArrayList<String>();
|
||||||
String rhsName = ((CodegenModel) v).classname;
|
int sizeOrderedModels = orderedModels.size();
|
||||||
List<String> lhsList = deps.get(lhsName);
|
for (int i=0;i<sizeOrderedModels;i++) {
|
||||||
List<String> rhsList = deps.get(rhsName);
|
Map<String, Object> independentModel = null;
|
||||||
if (dependsOn(lhsName, rhsName)) {
|
String independentModelName = null;
|
||||||
// LOGGER.info("Type " + lhsName + " depends on " + rhsName);
|
for (Map<String, Object> model : orderedModels) {
|
||||||
return 1;
|
// let us work with fully qualified names only
|
||||||
|
String modelName = modelPackage + ".Models." + ((CodegenModel) model.get("model")).classname;
|
||||||
|
boolean dependent = false;
|
||||||
|
for (String dependency : modelDepends.get(modelName)) {
|
||||||
|
if (!collectedModelNames.contains(dependency)) {
|
||||||
|
dependent = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (dependsOn(rhsName, lhsName)) {
|
if (!dependent) {
|
||||||
// LOGGER.info("Type " + rhsName + " depends on " + lhsName);
|
// this model was independent
|
||||||
return -1;
|
independentModel = model;
|
||||||
|
independentModelName = modelName;
|
||||||
}
|
}
|
||||||
// Put models without dependencies first.
|
|
||||||
if (lhsList == null) {
|
|
||||||
// LOGGER.info(" Empty " + lhsName + ", no check " + rhsName);
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
if (rhsList == null) {
|
|
||||||
// LOGGER.info(" No check " + lhsName + ", empty " + rhsName);
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
// Sort models on their name.
|
|
||||||
// LOGGER.info("Compare " + lhsName + "<" + rhsName);
|
|
||||||
return lhsName.compareTo(rhsName);
|
|
||||||
}
|
}
|
||||||
});
|
if (null != independentModel) {
|
||||||
/* for (Map<String, Object> model : orderedModels) {
|
// I have find an independentModel. Add it to revisedOrderedModels, and remove from orderedModels
|
||||||
Object v = model.get("model");
|
revisedOrderedModels.add(independentModel);
|
||||||
if (v instanceof CodegenModel) {
|
collectedModelNames.add(independentModelName);
|
||||||
CodegenModel m = (CodegenModel) v;
|
orderedModels.remove(independentModel);
|
||||||
LOGGER.info("Order: " + m.name);
|
|
||||||
}
|
}
|
||||||
} */
|
}
|
||||||
|
// bookkeeping:
|
||||||
|
// if I still have elements in orderedModels:
|
||||||
|
// if it's NOT last time I postProcessModels(), it means there are some dependencies that were not considered yet. That's not a problem
|
||||||
|
// if it's last iteration, there are circular dependencies.
|
||||||
|
// In any case, I add models still in orderedModels to revisedOrderedModels
|
||||||
|
revisedOrderedModels.addAll(orderedModels);
|
||||||
|
orderedModels = revisedOrderedModels;
|
||||||
|
|
||||||
return postProcessModelsEnum(objs);
|
return postProcessModelsEnum(objs);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1 +1 @@
|
|||||||
2.3.1
|
2.4.0-SNAPSHOT
|
@ -4,7 +4,7 @@
|
|||||||
-- OpenAPI spec version: 1.0.0
|
-- OpenAPI spec version: 1.0.0
|
||||||
-- Contact: apiteam@swagger.io
|
-- Contact: apiteam@swagger.io
|
||||||
--
|
--
|
||||||
-- NOTE: This package is auto generated by the swagger code generator 2.3.1.
|
-- NOTE: This package is auto generated by the swagger code generator 2.4.0-SNAPSHOT.
|
||||||
-- https://github.com/swagger-api/swagger-codegen.git
|
-- https://github.com/swagger-api/swagger-codegen.git
|
||||||
-- Do not edit the class manually.
|
-- Do not edit the class manually.
|
||||||
with Swagger.Streams;
|
with Swagger.Streams;
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
-- OpenAPI spec version: 1.0.0
|
-- OpenAPI spec version: 1.0.0
|
||||||
-- Contact: apiteam@swagger.io
|
-- Contact: apiteam@swagger.io
|
||||||
--
|
--
|
||||||
-- NOTE: This package is auto generated by the swagger code generator 2.3.1.
|
-- NOTE: This package is auto generated by the swagger code generator 2.4.0-SNAPSHOT.
|
||||||
-- https://github.com/swagger-api/swagger-codegen.git
|
-- https://github.com/swagger-api/swagger-codegen.git
|
||||||
-- Do not edit the class manually.
|
-- Do not edit the class manually.
|
||||||
with Samples.Petstore.Models;
|
with Samples.Petstore.Models;
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
-- OpenAPI spec version: 1.0.0
|
-- OpenAPI spec version: 1.0.0
|
||||||
-- Contact: apiteam@swagger.io
|
-- Contact: apiteam@swagger.io
|
||||||
--
|
--
|
||||||
-- NOTE: This package is auto generated by the swagger code generator 2.3.1.
|
-- NOTE: This package is auto generated by the swagger code generator 2.4.0-SNAPSHOT.
|
||||||
-- https://github.com/swagger-api/swagger-codegen.git
|
-- https://github.com/swagger-api/swagger-codegen.git
|
||||||
-- Do not edit the class manually.
|
-- Do not edit the class manually.
|
||||||
|
|
||||||
@ -64,110 +64,6 @@ package body Samples.Petstore.Models is
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
procedure Serialize (Into : in out Swagger.Streams.Output_Stream'Class;
|
|
||||||
Name : in String;
|
|
||||||
Value : in Category_Type) is
|
|
||||||
begin
|
|
||||||
Into.Start_Entity (Name);
|
|
||||||
Serialize (Into, "id", Value.Id);
|
|
||||||
Into.Write_Entity ("name", Value.Name);
|
|
||||||
Into.End_Entity (Name);
|
|
||||||
end Serialize;
|
|
||||||
|
|
||||||
procedure Serialize (Into : in out Swagger.Streams.Output_Stream'Class;
|
|
||||||
Name : in String;
|
|
||||||
Value : in Category_Type_Vectors.Vector) is
|
|
||||||
begin
|
|
||||||
Into.Start_Array (Name);
|
|
||||||
for Item of Value loop
|
|
||||||
Serialize (Into, "", Item);
|
|
||||||
end loop;
|
|
||||||
Into.End_Array (Name);
|
|
||||||
end Serialize;
|
|
||||||
|
|
||||||
procedure Deserialize (From : in Swagger.Value_Type;
|
|
||||||
Name : in String;
|
|
||||||
Value : out Category_Type) is
|
|
||||||
Object : Swagger.Value_Type;
|
|
||||||
begin
|
|
||||||
Swagger.Streams.Deserialize (From, Name, Object);
|
|
||||||
Swagger.Streams.Deserialize (Object, "id", Value.Id);
|
|
||||||
Swagger.Streams.Deserialize (Object, "name", Value.Name);
|
|
||||||
end Deserialize;
|
|
||||||
|
|
||||||
procedure Deserialize (From : in Swagger.Value_Type;
|
|
||||||
Name : in String;
|
|
||||||
Value : out Category_Type_Vectors.Vector) is
|
|
||||||
List : Swagger.Value_Array_Type;
|
|
||||||
Item : Category_Type;
|
|
||||||
begin
|
|
||||||
Value.Clear;
|
|
||||||
Swagger.Streams.Deserialize (From, Name, List);
|
|
||||||
for Data of List loop
|
|
||||||
Deserialize (Data, "", Item);
|
|
||||||
Value.Append (Item);
|
|
||||||
end loop;
|
|
||||||
end Deserialize;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
procedure Serialize (Into : in out Swagger.Streams.Output_Stream'Class;
|
|
||||||
Name : in String;
|
|
||||||
Value : in Order_Type) is
|
|
||||||
begin
|
|
||||||
Into.Start_Entity (Name);
|
|
||||||
Serialize (Into, "id", Value.Id);
|
|
||||||
Serialize (Into, "petId", Value.Pet_Id);
|
|
||||||
Into.Write_Entity ("quantity", Value.Quantity);
|
|
||||||
Into.Write_Entity ("shipDate", Value.Ship_Date);
|
|
||||||
Into.Write_Entity ("status", Value.Status);
|
|
||||||
Into.Write_Entity ("complete", Value.Complete);
|
|
||||||
Into.End_Entity (Name);
|
|
||||||
end Serialize;
|
|
||||||
|
|
||||||
procedure Serialize (Into : in out Swagger.Streams.Output_Stream'Class;
|
|
||||||
Name : in String;
|
|
||||||
Value : in Order_Type_Vectors.Vector) is
|
|
||||||
begin
|
|
||||||
Into.Start_Array (Name);
|
|
||||||
for Item of Value loop
|
|
||||||
Serialize (Into, "", Item);
|
|
||||||
end loop;
|
|
||||||
Into.End_Array (Name);
|
|
||||||
end Serialize;
|
|
||||||
|
|
||||||
procedure Deserialize (From : in Swagger.Value_Type;
|
|
||||||
Name : in String;
|
|
||||||
Value : out Order_Type) is
|
|
||||||
Object : Swagger.Value_Type;
|
|
||||||
begin
|
|
||||||
Swagger.Streams.Deserialize (From, Name, Object);
|
|
||||||
Swagger.Streams.Deserialize (Object, "id", Value.Id);
|
|
||||||
Swagger.Streams.Deserialize (Object, "petId", Value.Pet_Id);
|
|
||||||
Swagger.Streams.Deserialize (Object, "quantity", Value.Quantity);
|
|
||||||
Deserialize (Object, "shipDate", Value.Ship_Date);
|
|
||||||
Swagger.Streams.Deserialize (Object, "status", Value.Status);
|
|
||||||
Swagger.Streams.Deserialize (Object, "complete", Value.Complete);
|
|
||||||
end Deserialize;
|
|
||||||
|
|
||||||
procedure Deserialize (From : in Swagger.Value_Type;
|
|
||||||
Name : in String;
|
|
||||||
Value : out Order_Type_Vectors.Vector) is
|
|
||||||
List : Swagger.Value_Array_Type;
|
|
||||||
Item : Order_Type;
|
|
||||||
begin
|
|
||||||
Value.Clear;
|
|
||||||
Swagger.Streams.Deserialize (From, Name, List);
|
|
||||||
for Data of List loop
|
|
||||||
Deserialize (Data, "", Item);
|
|
||||||
Value.Append (Item);
|
|
||||||
end loop;
|
|
||||||
end Deserialize;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
procedure Serialize (Into : in out Swagger.Streams.Output_Stream'Class;
|
procedure Serialize (Into : in out Swagger.Streams.Output_Stream'Class;
|
||||||
Name : in String;
|
Name : in String;
|
||||||
Value : in Tag_Type) is
|
Value : in Tag_Type) is
|
||||||
@ -216,6 +112,54 @@ package body Samples.Petstore.Models is
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure Serialize (Into : in out Swagger.Streams.Output_Stream'Class;
|
||||||
|
Name : in String;
|
||||||
|
Value : in Category_Type) is
|
||||||
|
begin
|
||||||
|
Into.Start_Entity (Name);
|
||||||
|
Serialize (Into, "id", Value.Id);
|
||||||
|
Into.Write_Entity ("name", Value.Name);
|
||||||
|
Into.End_Entity (Name);
|
||||||
|
end Serialize;
|
||||||
|
|
||||||
|
procedure Serialize (Into : in out Swagger.Streams.Output_Stream'Class;
|
||||||
|
Name : in String;
|
||||||
|
Value : in Category_Type_Vectors.Vector) is
|
||||||
|
begin
|
||||||
|
Into.Start_Array (Name);
|
||||||
|
for Item of Value loop
|
||||||
|
Serialize (Into, "", Item);
|
||||||
|
end loop;
|
||||||
|
Into.End_Array (Name);
|
||||||
|
end Serialize;
|
||||||
|
|
||||||
|
procedure Deserialize (From : in Swagger.Value_Type;
|
||||||
|
Name : in String;
|
||||||
|
Value : out Category_Type) is
|
||||||
|
Object : Swagger.Value_Type;
|
||||||
|
begin
|
||||||
|
Swagger.Streams.Deserialize (From, Name, Object);
|
||||||
|
Swagger.Streams.Deserialize (Object, "id", Value.Id);
|
||||||
|
Swagger.Streams.Deserialize (Object, "name", Value.Name);
|
||||||
|
end Deserialize;
|
||||||
|
|
||||||
|
procedure Deserialize (From : in Swagger.Value_Type;
|
||||||
|
Name : in String;
|
||||||
|
Value : out Category_Type_Vectors.Vector) is
|
||||||
|
List : Swagger.Value_Array_Type;
|
||||||
|
Item : Category_Type;
|
||||||
|
begin
|
||||||
|
Value.Clear;
|
||||||
|
Swagger.Streams.Deserialize (From, Name, List);
|
||||||
|
for Data of List loop
|
||||||
|
Deserialize (Data, "", Item);
|
||||||
|
Value.Append (Item);
|
||||||
|
end loop;
|
||||||
|
end Deserialize;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
procedure Serialize (Into : in out Swagger.Streams.Output_Stream'Class;
|
procedure Serialize (Into : in out Swagger.Streams.Output_Stream'Class;
|
||||||
Name : in String;
|
Name : in String;
|
||||||
Value : in Pet_Type) is
|
Value : in Pet_Type) is
|
||||||
@ -331,4 +275,60 @@ package body Samples.Petstore.Models is
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
procedure Serialize (Into : in out Swagger.Streams.Output_Stream'Class;
|
||||||
|
Name : in String;
|
||||||
|
Value : in Order_Type) is
|
||||||
|
begin
|
||||||
|
Into.Start_Entity (Name);
|
||||||
|
Serialize (Into, "id", Value.Id);
|
||||||
|
Serialize (Into, "petId", Value.Pet_Id);
|
||||||
|
Into.Write_Entity ("quantity", Value.Quantity);
|
||||||
|
Into.Write_Entity ("shipDate", Value.Ship_Date);
|
||||||
|
Into.Write_Entity ("status", Value.Status);
|
||||||
|
Into.Write_Entity ("complete", Value.Complete);
|
||||||
|
Into.End_Entity (Name);
|
||||||
|
end Serialize;
|
||||||
|
|
||||||
|
procedure Serialize (Into : in out Swagger.Streams.Output_Stream'Class;
|
||||||
|
Name : in String;
|
||||||
|
Value : in Order_Type_Vectors.Vector) is
|
||||||
|
begin
|
||||||
|
Into.Start_Array (Name);
|
||||||
|
for Item of Value loop
|
||||||
|
Serialize (Into, "", Item);
|
||||||
|
end loop;
|
||||||
|
Into.End_Array (Name);
|
||||||
|
end Serialize;
|
||||||
|
|
||||||
|
procedure Deserialize (From : in Swagger.Value_Type;
|
||||||
|
Name : in String;
|
||||||
|
Value : out Order_Type) is
|
||||||
|
Object : Swagger.Value_Type;
|
||||||
|
begin
|
||||||
|
Swagger.Streams.Deserialize (From, Name, Object);
|
||||||
|
Swagger.Streams.Deserialize (Object, "id", Value.Id);
|
||||||
|
Swagger.Streams.Deserialize (Object, "petId", Value.Pet_Id);
|
||||||
|
Swagger.Streams.Deserialize (Object, "quantity", Value.Quantity);
|
||||||
|
Deserialize (Object, "shipDate", Value.Ship_Date);
|
||||||
|
Swagger.Streams.Deserialize (Object, "status", Value.Status);
|
||||||
|
Swagger.Streams.Deserialize (Object, "complete", Value.Complete);
|
||||||
|
end Deserialize;
|
||||||
|
|
||||||
|
procedure Deserialize (From : in Swagger.Value_Type;
|
||||||
|
Name : in String;
|
||||||
|
Value : out Order_Type_Vectors.Vector) is
|
||||||
|
List : Swagger.Value_Array_Type;
|
||||||
|
Item : Order_Type;
|
||||||
|
begin
|
||||||
|
Value.Clear;
|
||||||
|
Swagger.Streams.Deserialize (From, Name, List);
|
||||||
|
for Data of List loop
|
||||||
|
Deserialize (Data, "", Item);
|
||||||
|
Value.Append (Item);
|
||||||
|
end loop;
|
||||||
|
end Deserialize;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
end Samples.Petstore.Models;
|
end Samples.Petstore.Models;
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
-- OpenAPI spec version: 1.0.0
|
-- OpenAPI spec version: 1.0.0
|
||||||
-- Contact: apiteam@swagger.io
|
-- Contact: apiteam@swagger.io
|
||||||
--
|
--
|
||||||
-- NOTE: This package is auto generated by the swagger code generator 2.3.1.
|
-- NOTE: This package is auto generated by the swagger code generator 2.4.0-SNAPSHOT.
|
||||||
-- https://github.com/swagger-api/swagger-codegen.git
|
-- https://github.com/swagger-api/swagger-codegen.git
|
||||||
-- Do not edit the class manually.
|
-- Do not edit the class manually.
|
||||||
with Swagger.Streams;
|
with Swagger.Streams;
|
||||||
@ -45,74 +45,6 @@ package Samples.Petstore.Models is
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- ------------------------------
|
|
||||||
-- Pet category
|
|
||||||
-- A category for a pet
|
|
||||||
-- ------------------------------
|
|
||||||
type Category_Type is
|
|
||||||
record
|
|
||||||
Id : Swagger.Nullable_Long;
|
|
||||||
Name : Swagger.Nullable_UString;
|
|
||||||
end record;
|
|
||||||
|
|
||||||
package Category_Type_Vectors is
|
|
||||||
new Ada.Containers.Vectors (Index_Type => Positive,
|
|
||||||
Element_Type => Category_Type);
|
|
||||||
|
|
||||||
procedure Serialize (Into : in out Swagger.Streams.Output_Stream'Class;
|
|
||||||
Name : in String;
|
|
||||||
Value : in Category_Type);
|
|
||||||
|
|
||||||
procedure Serialize (Into : in out Swagger.Streams.Output_Stream'Class;
|
|
||||||
Name : in String;
|
|
||||||
Value : in Category_Type_Vectors.Vector);
|
|
||||||
|
|
||||||
procedure Deserialize (From : in Swagger.Value_Type;
|
|
||||||
Name : in String;
|
|
||||||
Value : out Category_Type);
|
|
||||||
|
|
||||||
procedure Deserialize (From : in Swagger.Value_Type;
|
|
||||||
Name : in String;
|
|
||||||
Value : out Category_Type_Vectors.Vector);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- ------------------------------
|
|
||||||
-- Pet Order
|
|
||||||
-- An order for a pets from the pet store
|
|
||||||
-- ------------------------------
|
|
||||||
type Order_Type is
|
|
||||||
record
|
|
||||||
Id : Swagger.Nullable_Long;
|
|
||||||
Pet_Id : Swagger.Nullable_Long;
|
|
||||||
Quantity : Swagger.Nullable_Integer;
|
|
||||||
Ship_Date : Swagger.Nullable_Date;
|
|
||||||
Status : Swagger.Nullable_UString;
|
|
||||||
Complete : Swagger.Nullable_Boolean;
|
|
||||||
end record;
|
|
||||||
|
|
||||||
package Order_Type_Vectors is
|
|
||||||
new Ada.Containers.Vectors (Index_Type => Positive,
|
|
||||||
Element_Type => Order_Type);
|
|
||||||
|
|
||||||
procedure Serialize (Into : in out Swagger.Streams.Output_Stream'Class;
|
|
||||||
Name : in String;
|
|
||||||
Value : in Order_Type);
|
|
||||||
|
|
||||||
procedure Serialize (Into : in out Swagger.Streams.Output_Stream'Class;
|
|
||||||
Name : in String;
|
|
||||||
Value : in Order_Type_Vectors.Vector);
|
|
||||||
|
|
||||||
procedure Deserialize (From : in Swagger.Value_Type;
|
|
||||||
Name : in String;
|
|
||||||
Value : out Order_Type);
|
|
||||||
|
|
||||||
procedure Deserialize (From : in Swagger.Value_Type;
|
|
||||||
Name : in String;
|
|
||||||
Value : out Order_Type_Vectors.Vector);
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- ------------------------------
|
-- ------------------------------
|
||||||
-- Pet Tag
|
-- Pet Tag
|
||||||
-- A tag for a pet
|
-- A tag for a pet
|
||||||
@ -145,6 +77,38 @@ package Samples.Petstore.Models is
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- ------------------------------
|
||||||
|
-- Pet category
|
||||||
|
-- A category for a pet
|
||||||
|
-- ------------------------------
|
||||||
|
type Category_Type is
|
||||||
|
record
|
||||||
|
Id : Swagger.Nullable_Long;
|
||||||
|
Name : Swagger.Nullable_UString;
|
||||||
|
end record;
|
||||||
|
|
||||||
|
package Category_Type_Vectors is
|
||||||
|
new Ada.Containers.Vectors (Index_Type => Positive,
|
||||||
|
Element_Type => Category_Type);
|
||||||
|
|
||||||
|
procedure Serialize (Into : in out Swagger.Streams.Output_Stream'Class;
|
||||||
|
Name : in String;
|
||||||
|
Value : in Category_Type);
|
||||||
|
|
||||||
|
procedure Serialize (Into : in out Swagger.Streams.Output_Stream'Class;
|
||||||
|
Name : in String;
|
||||||
|
Value : in Category_Type_Vectors.Vector);
|
||||||
|
|
||||||
|
procedure Deserialize (From : in Swagger.Value_Type;
|
||||||
|
Name : in String;
|
||||||
|
Value : out Category_Type);
|
||||||
|
|
||||||
|
procedure Deserialize (From : in Swagger.Value_Type;
|
||||||
|
Name : in String;
|
||||||
|
Value : out Category_Type_Vectors.Vector);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- ------------------------------
|
-- ------------------------------
|
||||||
-- a Pet
|
-- a Pet
|
||||||
-- A pet for sale in the pet store
|
-- A pet for sale in the pet store
|
||||||
@ -219,4 +183,40 @@ package Samples.Petstore.Models is
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- ------------------------------
|
||||||
|
-- Pet Order
|
||||||
|
-- An order for a pets from the pet store
|
||||||
|
-- ------------------------------
|
||||||
|
type Order_Type is
|
||||||
|
record
|
||||||
|
Id : Swagger.Nullable_Long;
|
||||||
|
Pet_Id : Swagger.Nullable_Long;
|
||||||
|
Quantity : Swagger.Nullable_Integer;
|
||||||
|
Ship_Date : Swagger.Nullable_Date;
|
||||||
|
Status : Swagger.Nullable_UString;
|
||||||
|
Complete : Swagger.Nullable_Boolean;
|
||||||
|
end record;
|
||||||
|
|
||||||
|
package Order_Type_Vectors is
|
||||||
|
new Ada.Containers.Vectors (Index_Type => Positive,
|
||||||
|
Element_Type => Order_Type);
|
||||||
|
|
||||||
|
procedure Serialize (Into : in out Swagger.Streams.Output_Stream'Class;
|
||||||
|
Name : in String;
|
||||||
|
Value : in Order_Type);
|
||||||
|
|
||||||
|
procedure Serialize (Into : in out Swagger.Streams.Output_Stream'Class;
|
||||||
|
Name : in String;
|
||||||
|
Value : in Order_Type_Vectors.Vector);
|
||||||
|
|
||||||
|
procedure Deserialize (From : in Swagger.Value_Type;
|
||||||
|
Name : in String;
|
||||||
|
Value : out Order_Type);
|
||||||
|
|
||||||
|
procedure Deserialize (From : in Swagger.Value_Type;
|
||||||
|
Name : in String;
|
||||||
|
Value : out Order_Type_Vectors.Vector);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
end Samples.Petstore.Models;
|
end Samples.Petstore.Models;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user