Skip to content

Commit

Permalink
chore(发布): 发布 2025.1.0
Browse files Browse the repository at this point in the history
  • Loading branch information
qianmoQ committed Jan 19, 2025
1 parent 570a353 commit 1392b98
Show file tree
Hide file tree
Showing 5 changed files with 75 additions and 13 deletions.
61 changes: 61 additions & 0 deletions docs/content/release/latest.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
---
title: 2025.1.0 (最新)
---

LightCall 1.0 正式发布:轻量级声明式服务调用框架

---

亲爱的开发者们:

我们很高兴地宣布 LightCall(版本 2025.1.0)正式发布。LightCall 是一个全新的轻量级声明式服务调用框架,旨在让服务调用变得像编写接口一样简单直观。通过简洁的注解方式,开发者可以以最小的开发成本实现优雅的服务访问。

### 核心特性

1. 完整的 HTTP 方法支持
- 支持标准 HTTP 方法:GET、POST、PUT、DELETE、PATCH、HEAD、OPTIONS
- 支持自定义请求处理器,满足特殊场景需求
- 支持请求体(Body)解析和自定义媒体类型

2. 灵活的请求配置
- 支持 @Header@Headers 注解进行请求头配置
- 支持路径参数和查询参数(@Param)配置
- 支持自定义媒体类型配置

3. 强大的扩展机制
- 支持可配置优先级的拦截器机制
- 支持自定义错误处理器
- 支持代理自动资源释放

4. 模块化设计
- 核心功能模块化拆分
- 独立的处理器设计
- 简化的处理器逻辑实现

### 文档与支持

- 官方网站:[https://lightcall.devlive.org](https://lightcall.devlive.org)
- 项目仓库:[https://github.com/devlive-community/lightcall](https://github.com/devlive-community/lightcall)
- 完整的使用文档和示例
- 详细的项目贡献指南

### 部署信息

该版本已发布至 Maven 中央仓库,开发者可以直接在项目中使用。

### 后续规划

这是 LightCall 的第一个正式版本,我们将持续改进和优化框架功能,欢迎开发者们:
- 提出建议和反馈
- 参与项目贡献
- 报告使用中遇到的问题

### 鸣谢

感谢所有关注和支持 LightCall 项目的开发者,我们将继续努力,为开发者提供更好的服务调用解决方案。

---

如需了解更多信息,请访问我们的官方网站或 GitHub 仓库。

2025年1月19日
4 changes: 3 additions & 1 deletion docs/pageforge.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -40,4 +40,6 @@ nav:
- /usage/delete
- /usage/patch
- /usage/options
- /usage/head
- /usage/head
- 发布日志:
- /release/latest
2 changes: 1 addition & 1 deletion lightcall-core/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<parent>
<groupId>org.devlive.lightcall</groupId>
<artifactId>lightcall</artifactId>
<version>2025.1.0-SNAPSHOT</version>
<version>2025.1.0</version>
</parent>

<name>lightcall-core</name>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,9 @@
public class LightCallProxy
implements InvocationHandler, AutoCloseable
{
private static final ObjectMapper OBJECT_MAPPER = new ObjectMapper(); // 静态共享
private final OkHttpClient client;
private final LightCallConfig config;
private final ObjectMapper objectMapper;
private final Map<Class<? extends Annotation>, MethodProcessor<?>> processors;

public LightCallProxy(LightCallConfig config)
Expand All @@ -42,24 +42,23 @@ public LightCallProxy(LightCallConfig config)
.connectTimeout(config.getConnectTimeout(), TimeUnit.MILLISECONDS)
.readTimeout(config.getReadTimeout(), TimeUnit.MILLISECONDS)
.build();
this.objectMapper = new ObjectMapper();
this.processors = new HashMap<>();

// 注册默认的处理器
registerProcessor(GetProcessor.create(client, objectMapper, config.getInterceptors(), config.getErrorHandlers()));
registerProcessor(PostProcessor.create(client, objectMapper, config.getInterceptors(), config.getErrorHandlers()));
registerProcessor(PutProcessor.create(client, objectMapper, config.getInterceptors(), config.getErrorHandlers()));
registerProcessor(DeleteProcessor.create(client, objectMapper, config.getInterceptors(), config.getErrorHandlers()));
registerProcessor(PatchProcessor.create(client, objectMapper, config.getInterceptors(), config.getErrorHandlers()));
registerProcessor(OptionsProcessor.create(client, objectMapper, config.getInterceptors(), config.getErrorHandlers()));
registerProcessor(HeadProcessor.create(client, objectMapper, config.getInterceptors(), config.getErrorHandlers()));
registerProcessor(GetProcessor.create(client, OBJECT_MAPPER, config.getInterceptors(), config.getErrorHandlers()));
registerProcessor(PostProcessor.create(client, OBJECT_MAPPER, config.getInterceptors(), config.getErrorHandlers()));
registerProcessor(PutProcessor.create(client, OBJECT_MAPPER, config.getInterceptors(), config.getErrorHandlers()));
registerProcessor(DeleteProcessor.create(client, OBJECT_MAPPER, config.getInterceptors(), config.getErrorHandlers()));
registerProcessor(PatchProcessor.create(client, OBJECT_MAPPER, config.getInterceptors(), config.getErrorHandlers()));
registerProcessor(OptionsProcessor.create(client, OBJECT_MAPPER, config.getInterceptors(), config.getErrorHandlers()));
registerProcessor(HeadProcessor.create(client, OBJECT_MAPPER, config.getInterceptors(), config.getErrorHandlers()));

// 注册自定义处理器
for (Class<? extends MethodProcessor<?>> processorClass : config.getProcessorClasses()) {
MethodProcessor<?> processor = ProcessorFactory.createProcessor(
processorClass,
client,
objectMapper,
OBJECT_MAPPER,
config.getInterceptors(),
config.getErrorHandlers()
);
Expand Down
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

<groupId>org.devlive.lightcall</groupId>
<artifactId>lightcall</artifactId>
<version>2025.1.0-SNAPSHOT</version>
<version>2025.1.0</version>
<packaging>pom</packaging>

<name>lightcall</name>
Expand Down

0 comments on commit 1392b98

Please sign in to comment.