private List<Parameter> expandParameter(Map<String, Model> models, RouteParameter it, Supplier<SerializableParameter> factory, String typeName, String prefix, boolean optional) { List<Parameter> parameters = new ArrayList<>(); Model model = models.get(typeName); Map<String, Property> properties = model.getProperties(); Optional.ofNullable(properties).ifPresent(props -> props.values().stream() .flatMap(p -> { SerializableParameter result = complement(p, it, factory.get()); String name = prefix + p.getName(); if (p instanceof RefProperty) { return expandParameter(models, it, factory, ((RefProperty) p).getSimpleRef(), name + ".", optional).stream(); } else { result.setName(name); boolean required; if (optional) { required = false; } else { required = p.getRequired(); } String desc = Strings.emptyToNull(p.getDescription()); result.setRequired(required); result.setDescription(desc); return Stream.of(result); } }) .forEach(parameters::add) ); return parameters; }
if (property.getRequired()) propertyNameContent.italicText(labels.getLabel(FLAGS_REQUIRED).toLowerCase()); else
public List<String> getRequired() { List<String> output = new ArrayList<String>(); if (properties != null) { for (String key : properties.keySet()) { Property prop = properties.get(key); if (prop != null && prop.getRequired()) { output.add(key); } } } Collections.sort(output); if (output.size() > 0) { return output; } else { return null; } }
@JsonGetter("required") public List<String> getRequiredProperties() { List<String> output = new ArrayList<String>(); if (properties != null) { for (String key : properties.keySet()) { Property prop = properties.get(key); if (prop != null && prop.getRequired()) { output.add(key); } } } Collections.sort(output); if (output.size() > 0) { return output; } else { return null; } }
private boolean isRequired(final Object obj, final String name, final Object referrer) { boolean _matched = false; if (obj instanceof Property) { _matched=true; return ((Property)obj).getRequired(); } if (!_matched) { if (obj instanceof Parameter) { _matched=true; return ((Parameter)obj).getRequired(); } } if (!_matched) { if (obj instanceof Model) { _matched=true; return this.getRequiredProperties(referrer).contains(name); } } throw new IllegalArgumentException( "Named item is represented by neither a Property, a Parameter, nor a Model"); }
private List<Parameter> expandParameter(Map<String, Model> models, RouteParameter it, Supplier<SerializableParameter> factory, String typeName, String prefix, boolean optional) { List<Parameter> parameters = new ArrayList<>(); Model model = models.get(typeName); Map<String, Property> properties = model.getProperties(); Optional.ofNullable(properties).ifPresent(props -> props.values().stream() .flatMap(p -> { SerializableParameter result = complement(p, it, factory.get()); String name = prefix + p.getName(); if (p instanceof RefProperty) { return expandParameter(models, it, factory, ((RefProperty) p).getSimpleRef(), name + ".", optional).stream(); } else { result.setName(name); boolean required; if (optional) { required = false; } else { required = p.getRequired(); } String desc = Strings.emptyToNull(p.getDescription()); result.setRequired(required); result.setDescription(desc); return Stream.of(result); } }) .forEach(parameters::add) ); return parameters; }
private PutMethodResponseInput getCreateResponseInput(RestApi api, String modelContentType, Response response) { final PutMethodResponseInput input = new PutMethodResponseInput(); // add response headers if (response.getHeaders() != null) { input.setResponseParameters(new HashMap<>()); response.getHeaders().entrySet().forEach( e -> input.getResponseParameters().put("method.response.header." + e.getKey(), e.getValue().getRequired())); } // if the schema references an existing model, use that model for the response Optional<Model> modelOpt = getModel(api, response); if (modelOpt.isPresent()) { input.setResponseModels(new HashMap<>()); String modelName = modelOpt.get().getName(); input.getResponseModels().put(modelContentType, modelName); this.processedModels.add(modelName); LOG.info("Found reference to existing model " + modelName); } else { // generate a model based on the schema if the model doesn't already exist if (response.getSchema() != null) { String modelName = generateModelName(response); LOG.info("Creating new model referenced from response: " + modelName); createModel(api, modelName, response.getSchema(), modelContentType); input.setResponseModels(new HashMap<>()); input.getResponseModels().put(modelContentType, modelName); } } return input; }
int req = Boolean.compare(p2.getValue().getRequired(), p1.getValue().getRequired()); if (req != 0) return req; return p1.getKey().compareTo(p2.getKey());
for (String key : properties.keySet()) { Property property = resolved.getProperties().get(key); if (property.getRequired()) { requiredProperties.add(key);
for (String key : properties.keySet()) { Property property = resolved.getProperties().get(key); if (property.getRequired()) { requiredProperties.add(key);
@Override public void execute(String name, String nameInSource, Property property, boolean array) { String type = getPropertyType(property, array); if (procedure.getParameterByName(nameInSource) == null) { ProcedureParameter param = mf.addProcedureParameter(name, type, Type.In, procedure); param.setProperty(PARAMETER_TYPE, parameter.getIn()); if (property != null && !property.getRequired()) { param.setProperty(BaseColumn.DEFAULT_HANDLING, BaseColumn.OMIT_DEFAULT); } param.setNullType(NullType.No_Nulls); param.setAnnotation(property!=null?property.getDescription():null); if (!name.equalsIgnoreCase(nameInSource)) { param.setNameInSource(nameInSource); } } } };
schema.setExample(provider.get()); provider.setRequired(schema.getRequired()); return provider; } else if (example != null) { DataProvider dataProvider = new ConstDataProvider(example); dataProvider.setRequired(schema.getRequired()); return dataProvider; dataProvider.setRequired(schema.getRequired()); return dataProvider;
if (property.getRequired()) propertyNameContent.italicText(labels.getLabel(FLAGS_REQUIRED).toLowerCase()); else
public CharSequence generateResponseHeader(final String headerName, final Property header) { StringConcatenation _builder = new StringConcatenation(); _builder.append("{"); _builder.newLine(); _builder.append(" "); _builder.append("\"objecttype\": \"HeaderParameter\","); _builder.newLine(); _builder.append(" "); _builder.append("\"name\": \""); String _escapeEcmaScript = StringEscapeUtils.escapeEcmaScript(headerName); _builder.append(_escapeEcmaScript, " "); _builder.append("\","); _builder.newLineIfNotEmpty(); _builder.append(" "); _builder.append("\"isProperty\": false,"); _builder.newLine(); _builder.append(" "); _builder.append("\"propertyId\": \"<undefined>\","); _builder.newLine(); _builder.append(" "); _builder.append("\"required\": "); boolean _required = header.getRequired(); _builder.append(_required, " "); _builder.newLineIfNotEmpty(); _builder.append("}"); _builder.newLine(); return _builder; }