protected void preProcessPath(ApiMetadataContext context, ApiMetadataBuilder m, MApiPathBuilder p) { p.getOperations().forEach(op -> { //operation tag createOperationTags(context, m, op.getRoute(), p, op); //operation id if(Strings.isEmpty(op.getId())) { strategy.tryCreateOperationId(context.getConfig(), m, p, op); } }); }
@Override public void postProcess(ApiMetadataContext context, ApiMetadataBuilder m) { m.getPaths().values().forEach(p -> { for(MApiOperationBuilder op : p.getOperations()) { Route route = op.getRoute(); if(null != route) { MetaEntity entity = route.getExtension(MetaEntity.class); MApiExtension extension = route.getExtension(MApiExtension.class); if(null != entity && null != extension) { String crud = (String)extension.getAttribute("crud"); if(!Strings.isEmpty(crud)) { doc(route, op, entity, crud); } } } } }); }
protected void processOperation(ApiMetadataContext context, MApiOperationBuilder o) { ReflectMethod method = o.getRoute().getAction().getMethod(); //operation if(null != method) { Doc doc = method.getAnnotation(Doc.class); if(null == doc) { doc = searchUp(method); } if(null != doc) { resolveDoc(context, o, doc); } } //parameters o.getParameters().forEach((param) -> processParameter(context, param, method)); }
protected void processOperation(ApiMetadataContext context, Map<Class<?>, ClassDoc> docs, MApiOperationBuilder o) { ReflectMethod method = o.getRoute().getAction().getMethod(); //operation if(null != method) { ClassDoc cdoc = resolveClassDoc(docs, method.getDeclaringClass(), false); MethodDoc mdoc = cdoc.methods.get(method.getName()); if(null != mdoc) { if(!Strings.isEmpty(mdoc.description)) { o.setDescription(mdoc.description); } if(!Strings.isEmpty(mdoc.response)) { for(MApiResponseBuilder resp : o.getResponses()) { if(resp.getStatus() >= 200 && resp.getStatus() < 300) { resp.setDescription(mdoc.response); break; } } } //parameters o.getParameters().forEach((param) -> processParameter(context, docs, mdoc, param, method)); } } }