public void addProperty(MApiPropertyBuilder p) { properties.put(p.getName(), p); }
public List<MApiPropertyBuilder> readProperties(Map<String,Object> properties, List<String> requiredProperties, SwaggerExtension ex) { List<MApiPropertyBuilder> list = new ArrayList<>(); properties.forEach((propName, propMap) -> { MApiPropertyBuilder p = readProperty(propName, (Map<String,Object>)propMap, ex); if(null != requiredProperties && requiredProperties.contains(p.getName())) { p.setRequired(true); } list.add(p); }); return list; }
protected String[] resolveReadOnlyProperties(T model) { Set<String> set = new HashSet<>(); MApiModelBuilder apiModel = model.getApiModel(); if(null != apiModel) { apiModel.getProperties().values().forEach(p -> { if(p.isReadOnly()) { set.add(p.getName()); } }); } return set.toArray(new String[0]); }
protected String[] resolveRequiredProperties(T model) { Set<String> set = new HashSet<>(); MApiModelBuilder apiModel = model.getApiModel(); if(null != apiModel) { apiModel.getProperties().values().forEach(p -> { if (isPropertyRequired(model, p)) { set.add(p.getName()); } }); } return set.toArray(new String[0]); }
@Override protected ModelValidatorBase.PropertyValidation[] resolvePropertyValidations(MetaApi api, MetaModel model, String name) { List<PropertyValidation> list = new ArrayList<>(); model.getProperties().values().forEach( p -> { MApiPropertyBuilder ap = p.getApiProperty(); if(null == ap || ap.isReadOnly()) { return; } Validator validator = Validators.of(api, p, qname(name, p.getName())); if(null != validator) { list.add(new PropertyValidation(ap.getName(), validator)); } }); return list.toArray(new PropertyValidation[0]); }
@Override protected PropertyValidation[] resolvePropertyValidations(MetaApi api, MetaEntity model, String name) { List<PropertyValidation> list = new ArrayList<>(); for(MetaField field : model.getFields().values()) { MApiPropertyBuilder ap = field.getApiProperty(); if(null == ap || ap.isReadOnly()) { continue; } String qname = qname(name, field.getName()); Validator validator = Validators.of(api, qname, ap.isRequired(), ap.getType(), field); if(null != validator) { list.add(new PropertyValidation(ap.getName(), validator)); } } return list.toArray(new PropertyValidation[0]); }
public static void tryCopyModel(MApiModelBuilder from, MetaModel to) { tryCopyNamed(from, to); if (null != from.getJavaTypes() && !from.getJavaTypes().isEmpty()) { to.setMappingClass(from.getJavaTypes().iterator().next()); } for (MApiPropertyBuilder ap : from.getProperties().values()) { MetaProperty mp = to.getProperty(ap.getName()); if (null == mp) { to.addProperty(toMetaProperty(ap)); } else { tryCopyProperty(ap, mp); } } }
protected void processModel(ApiMetadataContext context, MApiModelBuilder m) { ModelConfig mc = null; for(Class<?> javaType : m.getJavaTypes()) { mc = context.getConfig().getModelConfig(javaType); if(null != mc) { break; } } if(null == mc) { mc = context.getConfig().getModelConfig(m.getName()); } //configure the model properties. for(MApiPropertyBuilder p : m.getProperties().values()) { ModelConfig.Property c = null == mc ? null : mc.getProperty(p.getName()); trySetDoc(p, c, c); } }
MetaField f = e.getField(p.getName()); f.setApiProperty(p);