protected Parameter generateQueryPostOpParam(List<RestQueriesConfiguration.QueryParamInfo> params) { Map<String, Property> modelProps = params.stream() .collect(Collectors.toMap( RestQueriesConfiguration.QueryParamInfo::getName, p -> getPropertyFromJavaType(p.getType()))); ModelImpl parameterModel = new ModelImpl(); parameterModel.setProperties(modelProps); BodyParameter parameter = new BodyParameter() .name("paramsObject"); parameter.setRequired(true); return parameter.schema(parameterModel); }
protected Parameter generateServicePostOpParam(List<RestMethodParamInfo> params) { Map<String, Property> modelProps = params.stream() .collect(Collectors.toMap( RestMethodParamInfo::getName, p -> getPropertyFromJavaType(p.getType()))); ModelImpl parameterModel = new ModelImpl(); parameterModel.setProperties(modelProps); BodyParameter parameter = new BodyParameter() .name("paramsObject") .schema(parameterModel); parameter.setRequired(true); return parameter; }
protected ModelImpl generateEntityModel(MetaClass entityClass) { Map<String, Property> properties = new LinkedHashMap<>(); properties.put(ENTITY_NAME_PROP, new StringProperty() ._default(entityClass.getName())); properties.put(INSTANCE_NAME_PROP, getNamePatternProperty(entityClass)); for (MetaProperty metaProperty : entityClass.getProperties()) { String fieldName = metaProperty.getName(); Class<?> propertyType = metaProperty.getJavaType(); String propertyTypeName = propertyType.getName(); if (Collection.class.isAssignableFrom(propertyType)) { String collectionItemsType = metaProperty.getRange().asClass().getJavaClass().getName(); Property itemsProperty = getPropertyFromJavaType(collectionItemsType); Property collectionProperty = new ArrayProperty(itemsProperty); properties.put(fieldName, collectionProperty); } else if (Map.class.isAssignableFrom(propertyType)) { properties.put(fieldName, new ObjectProperty(Collections.emptyMap())); } else { properties.put(fieldName, getPropertyFromJavaType(propertyTypeName)); } } ModelImpl model = new ModelImpl() .name(entityClass.getName()); model.setProperties(properties); definitions.put("entities_" + model.getName(), model); return model; }
model.setProperties(properties); return model;
model.setProperties(properties);