142 lines
2.9 KiB
Java
142 lines
2.9 KiB
Java
/**
|
||
* Copyright (c) 2018-2028, lengleng (wangiegie@gmail.com).
|
||
* <p>
|
||
* Licensed under the GNU LESSER GENERAL PUBLIC LICENSE 3.0;
|
||
* you may not use this file except in compliance with the License.
|
||
* You may obtain a copy of the License at
|
||
* <p>
|
||
* http://www.gnu.org/licenses/lgpl.html
|
||
* <p>
|
||
* Unless required by applicable law or agreed to in writing, software
|
||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
* See the License for the specific language governing permissions and
|
||
* limitations under the License.
|
||
*/
|
||
package org.springblade.core.swagger;
|
||
|
||
import lombok.Data;
|
||
import lombok.NoArgsConstructor;
|
||
import org.springblade.core.launch.constant.AppConstant;
|
||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
||
|
||
import java.util.ArrayList;
|
||
import java.util.Collections;
|
||
import java.util.List;
|
||
|
||
/**
|
||
* SwaggerProperties
|
||
*
|
||
* @author Chill
|
||
*/
|
||
@Data
|
||
@ConfigurationProperties("swagger")
|
||
public class SwaggerProperties {
|
||
/**
|
||
* swagger会解析的包路径
|
||
**/
|
||
private List<String> basePackages = new ArrayList<>(Collections.singletonList(AppConstant.BASE_PACKAGES));
|
||
/**
|
||
* swagger会解析的url规则
|
||
**/
|
||
private List<String> basePath = new ArrayList<>();
|
||
/**
|
||
* 在basePath基础上需要排除的url规则
|
||
**/
|
||
private List<String> excludePath = new ArrayList<>();
|
||
/**
|
||
* 标题
|
||
**/
|
||
private String title = "SpringBlade 接口文档系统";
|
||
/**
|
||
* 描述
|
||
**/
|
||
private String description = "SpringBlade 接口文档系统";
|
||
/**
|
||
* 版本
|
||
**/
|
||
private String version = "3.2.0";
|
||
/**
|
||
* 许可证
|
||
**/
|
||
private String license = "";
|
||
/**
|
||
* 许可证URL
|
||
**/
|
||
private String licenseUrl = "";
|
||
/**
|
||
* 服务条款URL
|
||
**/
|
||
private String termsOfServiceUrl = "";
|
||
|
||
/**
|
||
* host信息
|
||
**/
|
||
private String host = "";
|
||
/**
|
||
* 联系人信息
|
||
*/
|
||
private Contact contact = new Contact();
|
||
/**
|
||
* 全局统一鉴权配置
|
||
**/
|
||
private Authorization authorization = new Authorization();
|
||
|
||
@Data
|
||
@NoArgsConstructor
|
||
public static class Contact {
|
||
|
||
/**
|
||
* 联系人
|
||
**/
|
||
private String name = "chillzhuang";
|
||
/**
|
||
* 联系人url
|
||
**/
|
||
private String url = "";
|
||
/**
|
||
* 联系人email
|
||
**/
|
||
private String email = "smallchill@163.com";
|
||
|
||
}
|
||
|
||
@Data
|
||
@NoArgsConstructor
|
||
public static class Authorization {
|
||
|
||
/**
|
||
* 鉴权策略ID,需要和SecurityReferences ID保持一致
|
||
*/
|
||
private String name = "";
|
||
|
||
/**
|
||
* 需要开启鉴权URL的正则
|
||
*/
|
||
private String authRegex = "^.*$";
|
||
|
||
/**
|
||
* 鉴权作用域列表
|
||
*/
|
||
private List<AuthorizationScope> authorizationScopeList = new ArrayList<>();
|
||
|
||
private List<String> tokenUrlList = new ArrayList<>();
|
||
}
|
||
|
||
@Data
|
||
@NoArgsConstructor
|
||
public static class AuthorizationScope {
|
||
|
||
/**
|
||
* 作用域名称
|
||
*/
|
||
private String scope = "";
|
||
|
||
/**
|
||
* 作用域描述
|
||
*/
|
||
private String description = "";
|
||
|
||
}
|
||
}
|