@AllowOpenAccess(value=true) public class GetOpenAPI extends AsyncDominoJNXJson
Gets the OpenAPI spec for a KeepDatabase
AsyncDominoBase.RequestTypeapiName, appTags, logger, requestParams, UNNEEDED_CALL, user, vertx| Constructor and Description | 
|---|
GetOpenAPI()  | 
| Modifier and Type | Method and Description | 
|---|---|
io.vertx.core.json.JsonObject | 
buildCoreApiComponents(io.vertx.core.json.JsonObject api,
                      KeepDbInfo dbInfo,
                      io.vertx.core.json.JsonObject designJson)  | 
io.vertx.core.json.JsonObject | 
buildCoreApiPaths(io.vertx.core.json.JsonObject api,
                 KeepDbInfo dbInfo,
                 io.vertx.core.json.JsonObject designJson)
Builds the “paths” part of the OpenAPI spec 
 | 
io.vertx.core.json.JsonArray | 
buildCoreApiTags(KeepDbInfo dbInfo)
Generates a JsonArray of the relevant tags, a subset from the 
 | 
io.vertx.core.json.JsonObject | 
buildInfo(io.vertx.core.json.JsonObject api)
Build the info part of the OpenAPI spec 
 | 
io.vertx.core.json.JsonObject | 
buildMetadataResponseFields()
Build JsonObject of metadata fields for documents 
 | 
io.vertx.core.json.JsonObject | 
convertFieldToObject(io.vertx.core.json.JsonObject fieldsObj,
                    java.lang.String fieldName)
Builds a JsonObject for the given field, with title, description, type and schema. 
 | 
void | 
process(DbRequestParameters<io.vertx.core.json.JsonObject> request)
Actual work is done here. 
 | 
io.vertx.core.json.JsonArray | 
replaceParamSchema(io.vertx.core.json.JsonObject pathObj,
                  java.lang.String paramName,
                  java.lang.Object newSchema,
                  boolean removeExamples)
Replaces the schema for a given parameter 
 | 
getDbRequestParametersaccessControlCheck, dontCallProcessPayload, emitterToObserver, getActualDatabaseName, getApiName, getAppTags, getBarbican, getEventbusId, getKeepDbInfo, getRequestType, getSubscriber, getUser, getUserForMetrics, isProcessPayloadRequired, isWorkInProgress, processDominoRequest, recordAppMetrics, setApiName, setBarbican, setDbFileName, setKeepDbInfo, setProcessPayloadRequired, setRequestParams, setRequestType, setSubscriber, setUser, setVertx, subscribe, validateDqlAccess, validateOpenAccess, validationCheckclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitcustomValidator, preflightpublic io.vertx.core.json.JsonObject buildCoreApiComponents(io.vertx.core.json.JsonObject api,
                                                            KeepDbInfo dbInfo,
                                                            io.vertx.core.json.JsonObject designJson)
api - the OpenAPI to modifydbInfo - KeepDatabase configdesignJson - JSON version of the database designpublic io.vertx.core.json.JsonObject buildCoreApiPaths(io.vertx.core.json.JsonObject api,
                                                       KeepDbInfo dbInfo,
                                                       io.vertx.core.json.JsonObject designJson)
Builds the “paths” part of the OpenAPI spec
api - OpenAPI spec that is used as a basedbInfo - KeepDatabase configdesignJson - JSON version fo the DXL designpublic io.vertx.core.json.JsonArray buildCoreApiTags(KeepDbInfo dbInfo)
Generates a JsonArray of the relevant tags, a subset from the
dbInfo - KeepDatabase configpublic io.vertx.core.json.JsonObject buildInfo(io.vertx.core.json.JsonObject api)
Build the info part of the OpenAPI spec
api - the OpenAPI to modifypublic io.vertx.core.json.JsonObject buildMetadataResponseFields()
Build JsonObject of metadata fields for documents
public io.vertx.core.json.JsonObject convertFieldToObject(io.vertx.core.json.JsonObject fieldsObj,
                                                          java.lang.String fieldName)
Builds a JsonObject for the given field, with title, description, type and schema. If the field does not exist on the form, no schema is added
fieldsObj - JsonObject of all fields in the FormfieldName - string field name being iteratedpublic void process(DbRequestParameters<io.vertx.core.json.JsonObject> request) throws java.lang.Exception
AsyncDominoBaseActual work is done here. The DbRequestParameters injects all needed components as well as functions like validation and results
request - DbRequestParameters granting access to session and databasejava.lang.Exception - Anything that can go wrong, will go wrongpublic io.vertx.core.json.JsonArray replaceParamSchema(io.vertx.core.json.JsonObject pathObj,
                                                       java.lang.String paramName,
                                                       java.lang.Object newSchema,
                                                       boolean removeExamples)
Replaces the schema for a given parameter
pathObj - JsonObject for the path to query. The JsonObject will  contain a “parameters” arrayparamName - String parameter name to look fornewSchema - JsonObject containing the new schemaremoveExamples - whether examples should be removed. If the schema has  been changed to an enum, this is no longer relevant