forked from loafle/openapi-generator-original
Filter out problem+json mime type from JSON mime types (#9680)
This commit is contained in:
@@ -512,6 +512,15 @@ public class ApiClient{{#jsr310}} extends JavaTimeFormatter{{/jsr310}} {
|
|||||||
return mediaType != null && (MediaType.APPLICATION_JSON.isCompatibleWith(mediaType) || mediaType.getSubtype().matches("^.*\\+json[;]?\\s*$"));
|
return mediaType != null && (MediaType.APPLICATION_JSON.isCompatibleWith(mediaType) || mediaType.getSubtype().matches("^.*\\+json[;]?\\s*$"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check if the given {@code String} is a Problem JSON MIME (RFC-7807).
|
||||||
|
* @param mediaType the input MediaType
|
||||||
|
* @return boolean true if the MediaType represents Problem JSON, false otherwise
|
||||||
|
*/
|
||||||
|
public boolean isProblemJsonMime(String mediaType) {
|
||||||
|
return "application/problem+json".equalsIgnoreCase(mediaType);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Select the Accept header's value from the given accepts array:
|
* Select the Accept header's value from the given accepts array:
|
||||||
* if JSON exists in the given array, use it;
|
* if JSON exists in the given array, use it;
|
||||||
@@ -526,7 +535,7 @@ public class ApiClient{{#jsr310}} extends JavaTimeFormatter{{/jsr310}} {
|
|||||||
}
|
}
|
||||||
for (String accept : accepts) {
|
for (String accept : accepts) {
|
||||||
MediaType mediaType = MediaType.parseMediaType(accept);
|
MediaType mediaType = MediaType.parseMediaType(accept);
|
||||||
if (isJsonMime(mediaType)) {
|
if (isJsonMime(mediaType) && !isProblemJsonMime(accept)) {
|
||||||
return Collections.singletonList(mediaType);
|
return Collections.singletonList(mediaType);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -497,6 +497,15 @@ public class ApiClient extends JavaTimeFormatter {
|
|||||||
return mediaType != null && (MediaType.APPLICATION_JSON.isCompatibleWith(mediaType) || mediaType.getSubtype().matches("^.*\\+json[;]?\\s*$"));
|
return mediaType != null && (MediaType.APPLICATION_JSON.isCompatibleWith(mediaType) || mediaType.getSubtype().matches("^.*\\+json[;]?\\s*$"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check if the given {@code String} is a Problem JSON MIME (RFC-7807).
|
||||||
|
* @param mediaType the input MediaType
|
||||||
|
* @return boolean true if the MediaType represents Problem JSON, false otherwise
|
||||||
|
*/
|
||||||
|
public boolean isProblemJsonMime(String mediaType) {
|
||||||
|
return "application/problem+json".equalsIgnoreCase(mediaType);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Select the Accept header's value from the given accepts array:
|
* Select the Accept header's value from the given accepts array:
|
||||||
* if JSON exists in the given array, use it;
|
* if JSON exists in the given array, use it;
|
||||||
@@ -511,7 +520,7 @@ public class ApiClient extends JavaTimeFormatter {
|
|||||||
}
|
}
|
||||||
for (String accept : accepts) {
|
for (String accept : accepts) {
|
||||||
MediaType mediaType = MediaType.parseMediaType(accept);
|
MediaType mediaType = MediaType.parseMediaType(accept);
|
||||||
if (isJsonMime(mediaType)) {
|
if (isJsonMime(mediaType) && !isProblemJsonMime(accept)) {
|
||||||
return Collections.singletonList(mediaType);
|
return Collections.singletonList(mediaType);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user