Go to file
2019-09-02 09:20:56 +08:00
docs 声明 2019-08-09 17:01:21 +08:00
src 增加几个常量 2019-09-02 09:20:56 +08:00
.gitignore 提交 2019-08-09 10:01:54 +08:00
pom.xml 重命名以及修改 2019-08-30 09:21:06 +08:00
readme.md http API以及单元测试补充 2019-08-29 17:29:16 +08:00

帆软插件开发工具套件

作用简介

该套件在帆软工程类基础上做了二次封装仅暴露接口可以更好的兼容不同版本的非开放API。

比如,要获取报表的会话信息,以前需要调用方法

import com.fr.web.core.SessionPoolManager;
import org.jetbrains.annotations.NotNull;

SessionPoolManager#getSessionIDInfor(@NotNull String sessionID, Class<T> clazz);

但可能随着版本的变更SessionPoolManager变更了一个名字比如由SessionPoolManager改成了NewSessionPoolManager 那么所有调用了该API的插件都无法使用必须要重新修改插件中的该处代码并更新插件才行。

而如果采用可开发工具套件中的方法,则始终都是调用

import com.fanruan.api.session.SessionKit;
import org.jetbrains.annotations.NotNull;

SessionKit#getSession(@NotNull String sessionID);

仅仅只需要更新最新版本的开发套件工具包即可让老插件自然适配。

提交新API要求

  • 所有的API方法的返回值和参数仅允许使用JDK自带的类、接口类型、插件抽象类、注解或者使用了@Open标记的对象类型。

  • 所有的API方法均需要有单元测试覆盖。

  • 所有的API方法均需要有javadoc文档说明。

使用方法

先使用maven打包执行下面的命令跳过单元测试

 mvn package -Dmaven.test.skip=true

会在target目录下获得一个形如finekit-10.0-20190815.jar名字jar包直接作为插件依赖jar包即可。

已完全依赖FineKit的插件

插件名 源码
redis数据集插件 https://git.fanruan.com/fanruan/demo-tabledata-redis
增强公式编辑器插件 https://git.fanruan.com/fanruan/demo-formula-script
条件属性之文本对齐插件 https://git.fanruan.com/fanruan/demo-highlight-align

如何判断插件中调用的API需要增加到FineKit中

最简单的原则除了JDK自带的类、插件接口包括抽象类、以及使用了@Open注解标记的类之外是否还使用了com.fanruan.apicom.fr.third除外之外的类如果有则需要修改。

如何提交新的API

1、先访问https://git.fanruan.com并注册一个自己的账号;

2、然后将https://git.fanruan.com/fanruan/finekit fork到自己账户下

3、克隆FineKit代码到本地新增相关的API代码并提交到自己的仓库

4、提交Pull Request到FineKit主仓库等待审核通过被合并即可。