public static String readExternalRef(String file, RefFormat refFormat, List<AuthorizationValue> auths, Path parentDirectory) { if (!RefUtils.isAnExternalRefFormat(refFormat)) { throw new RuntimeException("Ref is not external");
public static String readExternalUrlRef(String file, RefFormat refFormat, List<AuthorizationValue> auths, String rootPath) { if (!RefUtils.isAnExternalRefFormat(refFormat)) { throw new RuntimeException("Ref is not external"); } String result; try { if (refFormat == RefFormat.URL) { result = RemoteUrl.urlToString(file, auths); } else { //its assumed to be a relative ref String url = buildUrl(rootPath, file); return readExternalRef(url, RefFormat.URL, auths, null); } } catch (Exception e) { throw new RuntimeException("Unable to load " + refFormat + " ref: " + file + " path:" + rootPath, e); } return result; }
public void processReferenceResponse(RefResponse refResponse){ RefFormat refFormat = refResponse.getRefFormat(); String $ref = refResponse.get$ref(); if (RefUtils.isAnExternalRefFormat(refFormat)){ externalRefProcessor.processRefToExternalResponse($ref, refFormat); } } }
private void processRefProperty(RefProperty refProperty) { // TODO: if the parent document is remote, then this will be remote by definition. if (isAnExternalRefFormat(refProperty.getRefFormat())) { final String newRef = externalRefProcessor.processRefToExternalDefinition(refProperty.get$ref(), refProperty.getRefFormat()); if (newRef != null) { refProperty.set$ref(RefType.DEFINITION.getInternalPrefix()+newRef); } } }
private void processRefModel(RefModel refModel) { /* if this is a URL or relative ref: 1) we need to load it into memory. 2) shove it into the #/definitions 3) update the RefModel to point to its location in #/definitions */ String newRef = null; if (isAnExternalRefFormat(refModel.getRefFormat())) { newRef = externalRefProcessor.processRefToExternalDefinition(refModel.get$ref(), refModel.getRefFormat()); } if (newRef != null) { refModel.set$ref(RefType.DEFINITION.getInternalPrefix() + newRef); } }
private void processRefProperty(RefProperty subRef, String externalFile) { if (isAnExternalRefFormat(subRef.getRefFormat())) { String joinedRef = join(externalFile, subRef.get$ref()); String processRef = processRefToExternalDefinition(joinedRef, subRef.getRefFormat()); if(processRef.startsWith("http") || processRef.startsWith("https:")) { subRef.set$ref(processRef); }else { subRef.set$ref(RefType.DEFINITION.getInternalPrefix()+processRef); } } else { String processRef = processRefToExternalDefinition(externalFile + subRef.get$ref(), RefFormat.RELATIVE); subRef.set$ref(RefType.DEFINITION.getInternalPrefix()+processRef); } }
if (model instanceof RefModel) { RefModel refModel = (RefModel) model; if (RefUtils.isAnExternalRefFormat(refModel.getRefFormat())) { processRefModel(refModel, $ref); } else {
private void processRefModel(RefModel subRef, String externalFile) { if (isAnExternalRefFormat(subRef.getRefFormat())) { String joinedRef = join(externalFile, subRef.get$ref()); subRef.set$ref(processRefToExternalDefinition(joinedRef, subRef.getRefFormat())); } else { processRefToExternalDefinition(externalFile + subRef.get$ref(), RefFormat.RELATIVE); } }
private void processDiscriminatorAsRefProperty(RefProperty subRef, String externalFile) { if (isAnExternalRefFormat(subRef.getRefFormat())) { String joinedRef = join(externalFile, subRef.get$ref()); subRef.set$ref(processRefToExternalDefinition(joinedRef, subRef.getRefFormat())); } else { String processRef = processRefToExternalDefinition(externalFile + subRef.get$ref(), RefFormat.RELATIVE); subRef.set$ref(RefType.DEFINITION.getInternalPrefix()+processRef); } }
if (model instanceof RefModel) { RefModel refModel = (RefModel) model; if (isAnExternalRefFormat(refModel.getRefFormat())) { refModel.set$ref(processRefToExternalDefinition(refModel.get$ref(), refModel.getRefFormat())); } else { if (allOfModel instanceof RefModel) { RefModel refModel = (RefModel) allOfModel; if (isAnExternalRefFormat(refModel.getRefFormat())) { String joinedRef = join(file, refModel.get$ref()); refModel.set$ref(processRefToExternalDefinition(joinedRef, refModel.getRefFormat()));