下面列出了io.swagger.annotations.SwaggerDefinition#io.swagger.models.auth.In 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
private boolean containEmptyResultFilter(List<Filter> filtersWithRightValues) {
boolean emptyResultFilter = false;
if(filtersWithRightValues.size()>0){
for (Filter filtersWithRightValue : filtersWithRightValues) {
Object value = filtersWithRightValue.getValue();
if(FilterOperator.In.getCode().equalsIgnoreCase(filtersWithRightValue.getOperator())){
if( value == null || ((List)value).size()==0){
emptyResultFilter = true;
}
}
}
}
return emptyResultFilter;
}
/**
* Checks if the defined apiKey is valid or not. Only apiKey definition with name as 'key' and
* 'in' as 'query' are allowed"
*/
private boolean isValidApiKeyDefinition(ApiKeyAuthDefinition apiKeydef) {
if (apiKeydef.getName().equalsIgnoreCase("key") || apiKeydef.getIn() == In.QUERY) {
return true;
} else {
diagCollector.addDiag(
Diag.warning(
SimpleLocation.UNKNOWN,
"apiKey '%s' is ignored. Only apiKey with 'name' as 'key' and 'in' as 'query' are "
+ "supported",
apiKeydef.getName()));
return false;
}
}
private List<ApiKey> adminApiKeys() {
return Arrays.asList(
new ApiKey("Token from header", ADMIN_TOKEN_HEADER_NAME, In.HEADER.name()),
new ApiKey("Token from query", ADMIN_TOKEN_QUERY_NAME, In.QUERY.name())
);
}
private List<ApiKey> contentApiKeys() {
return Arrays.asList(
new ApiKey("Access key from header", API_ACCESS_KEY_HEADER_NAME, In.HEADER.name()),
new ApiKey("Access key from query", API_ACCESS_KEY_QUERY_NAME, In.QUERY.name())
);
}
public static Swagger getSwagger() {
if (!swaggerEnable)
return new Swagger();
if (swagger != null)
return swagger;
Reader reader = new Reader(new Swagger());
String[] packages = null;
Class<?> mainClass = Dorado.mainClass;
EnableSwagger enableSwagger = mainClass.getAnnotation(EnableSwagger.class);
if (enableSwagger != null) {
packages = enableSwagger.value();
}
if (packages == null || packages.length == 0) {
packages = Dorado.serverConfig.scanPackages();
}
if (packages == null || packages.length == 0) {
packages = new String[] { mainClass.getPackage().getName() };
}
if (packages == null || packages.length == 0) {
throw new IllegalArgumentException("缺少scanPackages设置");
}
Set<Class<?>> classes = new HashSet<>();
for (String pkg : packages) {
try {
classes.addAll(PackageScanner.scan(pkg));
} catch (Exception ex) {
// ignore this ex
}
}
Swagger _swagger = reader.read(classes);
_swagger.setSchemes(Arrays.asList(Scheme.HTTP, Scheme.HTTPS));
ApiKey apiKey = apiContext.getApiKey();
if (apiKey != null) {
ApiKeyAuthDefinition apiKeyAuth = new ApiKeyAuthDefinition(apiKey.getName(),
In.forValue(apiKey.getIn() == null ? "header" : apiKey.getIn()));
_swagger.securityDefinition("auth", apiKeyAuth);
List<SecurityRequirement> securityRequirements = new ArrayList<>();
SecurityRequirement sr = new SecurityRequirement();
sr.requirement("auth");
securityRequirements.add(sr);
_swagger.setSecurity(securityRequirements);
}
if (apiContext.getInfo() != null)
_swagger.setInfo(apiContext.getInfo());
swagger = _swagger;
return _swagger;
}
public static ApiKeyAuthDefinition apiKeyAuth(String name, In in) {
return new ApiKeyAuthDefinition(name, in);
}