Эх сурвалжийг харах

mimic-real-msg with fake output

dengjia 1 сар өмнө
parent
commit
68b6c59c4f
82 өөрчлөгдсөн 369 нэмэгдсэн , 53 устгасан
  1. 0 0
      java11-full-mongodb-java-http/README.md
  2. 0 0
      java11-full-mongodb-java-http/publish.yaml
  3. 0 0
      java11-full-mongodb-java-http/src/Makefile
  4. 0 0
      java11-full-mongodb-java-http/src/README.md
  5. 0 0
      java11-full-mongodb-java-http/src/code/pom.xml
  6. 0 0
      java11-full-mongodb-java-http/src/code/src/main/java/example/App.java
  7. 0 0
      java11-full-mongodb-java-http/src/s.yaml
  8. 0 0
      java11-full-mongodb-java/publish.yaml
  9. 0 0
      java11-full-mongodb-java/readme.md
  10. 0 0
      java11-full-mongodb-java/src/Makefile
  11. 0 0
      java11-full-mongodb-java/src/README.md
  12. 0 0
      java11-full-mongodb-java/src/code/pom.xml
  13. 0 0
      java11-full-mongodb-java/src/code/src/main/java/example/App.java
  14. 0 0
      java11-full-mongodb-java/src/s.yaml
  15. 0 0
      java11-full-oss-trigger-java/publish.yaml
  16. 0 0
      java11-full-oss-trigger-java/readme.md
  17. 0 0
      java11-full-oss-trigger-java/readme_en.md
  18. 0 0
      java11-full-oss-trigger-java/src/Makefile
  19. 0 0
      java11-full-oss-trigger-java/src/code/pom.xml
  20. 0 0
      java11-full-oss-trigger-java/src/code/src/main/java/example/App.java
  21. 0 0
      java11-full-oss-trigger-java/src/event-template/oss-event.json
  22. 0 0
      java11-full-oss-trigger-java/src/readme.md
  23. 0 0
      java11-full-oss-trigger-java/src/readme_en.md
  24. 0 0
      java11-full-oss-trigger-java/src/s.yaml
  25. 0 0
      java11-full-rabbit-trigger-springboot/README-en.md
  26. 0 0
      java11-full-rabbit-trigger-springboot/README.md
  27. 0 0
      java11-full-rabbit-trigger-springboot/publish.yaml
  28. 0 0
      java11-full-rabbit-trigger-springboot/src/Makefile
  29. 0 0
      java11-full-rabbit-trigger-springboot/src/README-en.md
  30. 0 0
      java11-full-rabbit-trigger-springboot/src/README.md
  31. 0 0
      java11-full-rabbit-trigger-springboot/src/code/HELP.md
  32. 0 0
      java11-full-rabbit-trigger-springboot/src/code/mvnw
  33. 0 0
      java11-full-rabbit-trigger-springboot/src/code/mvnw.cmd
  34. 0 0
      java11-full-rabbit-trigger-springboot/src/code/pom.xml
  35. 0 0
      java11-full-rabbit-trigger-springboot/src/code/src/main/java/com/example/demo/DemoApplication.java
  36. 0 0
      java11-full-rabbit-trigger-springboot/src/code/src/main/java/com/example/demo/controller/DemoController.java
  37. 0 0
      java11-full-rabbit-trigger-springboot/src/code/src/main/resources/application.properties
  38. 0 0
      java11-full-rabbit-trigger-springboot/src/code/src/test/java/com/example/demo/DemoApplicationTests.java
  39. 0 0
      java11-full-rabbit-trigger-springboot/src/event-example/rabbitmq-eventbridge-fc-sample.json
  40. 0 0
      java11-full-rabbit-trigger-springboot/src/s.yaml
  41. 0 0
      java11-full-rds-mysql-http-java11/publish.yaml
  42. 0 0
      java11-full-rds-mysql-http-java11/readme.md
  43. 0 0
      java11-full-rds-mysql-http-java11/src/Makefile
  44. 0 0
      java11-full-rds-mysql-http-java11/src/README.md
  45. 0 0
      java11-full-rds-mysql-http-java11/src/assets/20220411105111.jpg
  46. 0 0
      java11-full-rds-mysql-http-java11/src/assets/20220411105312.jpg
  47. 0 0
      java11-full-rds-mysql-http-java11/src/code/pom.xml
  48. 0 0
      java11-full-rds-mysql-http-java11/src/code/src/main/java/example/App.java
  49. 0 0
      java11-full-rds-mysql-http-java11/src/s.yaml
  50. 0 0
      java11-full-rds-mysql-java11/publish.yaml
  51. 0 0
      java11-full-rds-mysql-java11/readme.md
  52. 0 0
      java11-full-rds-mysql-java11/src/Makefile
  53. 0 0
      java11-full-rds-mysql-java11/src/README.md
  54. 0 0
      java11-full-rds-mysql-java11/src/assets/20220411105111.jpg
  55. 0 0
      java11-full-rds-mysql-java11/src/assets/20220411105312.jpg
  56. 0 0
      java11-full-rds-mysql-java11/src/code/pom.xml
  57. 0 0
      java11-full-rds-mysql-java11/src/code/src/main/java/example/App.java
  58. 0 0
      java11-full-rds-mysql-java11/src/s.yaml
  59. 0 0
      java11-full-timer-trigger-java/README-en.md
  60. 0 0
      java11-full-timer-trigger-java/README.md
  61. 0 0
      java11-full-timer-trigger-java/publish.yaml
  62. 0 0
      java11-full-timer-trigger-java/src/Makefile
  63. 0 0
      java11-full-timer-trigger-java/src/README-en.md
  64. 0 0
      java11-full-timer-trigger-java/src/README.md
  65. 0 0
      java11-full-timer-trigger-java/src/code/pom.xml
  66. 0 0
      java11-full-timer-trigger-java/src/code/src/main/java/example/App.java
  67. 0 0
      java11-full-timer-trigger-java/src/event-example/timer-fc-sample.json
  68. 0 0
      java11-full-timer-trigger-java/src/s.yaml
  69. 84 0
      mimic-real-msg/README.md
  70. 6 0
      mimic-real-msg/event.json
  71. 92 0
      mimic-real-msg/pom.xml
  72. 20 0
      mimic-real-msg/src/main/java/com/yaoyicloud/ai/pipeline/fc/MimicRealMsgHandler.java
  73. 49 0
      mimic-real-msg/src/test/java/com/yaoyicloud/ai/pipeline/fc/MimicRealMsgHandlerTest.java
  74. 11 7
      pom.xml
  75. 13 28
      read-oss-test-data/pom.xml
  76. 3 3
      read-oss-test-data/src/main/java/com/yaoyicloud/ai/pipeline/fc/ReadOssTestDataHandler.java
  77. 0 12
      read-oss-test-data/src/main/java/com/yaoyicloud/ai/pipeline/fc/ReadOssTestDataResponse.java
  78. 2 3
      read-oss-test-data/src/test/java/com/yaoyicloud/ai/pipeline/fc/ReadOssTestDataHandlerTest.java
  79. 40 0
      yyc-fc-api/pom.xml
  80. 16 0
      yyc-fc-api/src/main/java/com/yaoyicloud/ai/pipeline/fc/OssTestDataSet.java
  81. 4 0
      yyc-fc-api/src/main/java/com/yaoyicloud/ai/pipeline/fc/ReadOssTestDataRequest.java
  82. 29 0
      yyc-fc-api/src/main/java/com/yaoyicloud/ai/pipeline/fc/TaskContentMsgs.java

+ 0 - 0
mongodb-java-http/README.md → java11-full-mongodb-java-http/README.md


+ 0 - 0
mongodb-java-http/publish.yaml → java11-full-mongodb-java-http/publish.yaml


+ 0 - 0
mongodb-java-http/src/Makefile → java11-full-mongodb-java-http/src/Makefile


+ 0 - 0
mongodb-java-http/src/README.md → java11-full-mongodb-java-http/src/README.md


+ 0 - 0
mongodb-java-http/src/code/pom.xml → java11-full-mongodb-java-http/src/code/pom.xml


+ 0 - 0
mongodb-java-http/src/code/src/main/java/example/App.java → java11-full-mongodb-java-http/src/code/src/main/java/example/App.java


+ 0 - 0
mongodb-java-http/src/s.yaml → java11-full-mongodb-java-http/src/s.yaml


+ 0 - 0
mongodb-java/publish.yaml → java11-full-mongodb-java/publish.yaml


+ 0 - 0
mongodb-java/readme.md → java11-full-mongodb-java/readme.md


+ 0 - 0
mongodb-java/src/Makefile → java11-full-mongodb-java/src/Makefile


+ 0 - 0
mongodb-java/src/README.md → java11-full-mongodb-java/src/README.md


+ 0 - 0
mongodb-java/src/code/pom.xml → java11-full-mongodb-java/src/code/pom.xml


+ 0 - 0
mongodb-java/src/code/src/main/java/example/App.java → java11-full-mongodb-java/src/code/src/main/java/example/App.java


+ 0 - 0
mongodb-java/src/s.yaml → java11-full-mongodb-java/src/s.yaml


+ 0 - 0
oss-trigger-java/publish.yaml → java11-full-oss-trigger-java/publish.yaml


+ 0 - 0
oss-trigger-java/readme.md → java11-full-oss-trigger-java/readme.md


+ 0 - 0
oss-trigger-java/readme_en.md → java11-full-oss-trigger-java/readme_en.md


+ 0 - 0
oss-trigger-java/src/Makefile → java11-full-oss-trigger-java/src/Makefile


+ 0 - 0
oss-trigger-java/src/code/pom.xml → java11-full-oss-trigger-java/src/code/pom.xml


+ 0 - 0
oss-trigger-java/src/code/src/main/java/example/App.java → java11-full-oss-trigger-java/src/code/src/main/java/example/App.java


+ 0 - 0
oss-trigger-java/src/event-template/oss-event.json → java11-full-oss-trigger-java/src/event-template/oss-event.json


+ 0 - 0
oss-trigger-java/src/readme.md → java11-full-oss-trigger-java/src/readme.md


+ 0 - 0
oss-trigger-java/src/readme_en.md → java11-full-oss-trigger-java/src/readme_en.md


+ 0 - 0
oss-trigger-java/src/s.yaml → java11-full-oss-trigger-java/src/s.yaml


+ 0 - 0
rabbit-trigger-springboot/README-en.md → java11-full-rabbit-trigger-springboot/README-en.md


+ 0 - 0
rabbit-trigger-springboot/README.md → java11-full-rabbit-trigger-springboot/README.md


+ 0 - 0
rabbit-trigger-springboot/publish.yaml → java11-full-rabbit-trigger-springboot/publish.yaml


+ 0 - 0
rabbit-trigger-springboot/src/Makefile → java11-full-rabbit-trigger-springboot/src/Makefile


+ 0 - 0
rabbit-trigger-springboot/src/README-en.md → java11-full-rabbit-trigger-springboot/src/README-en.md


+ 0 - 0
rabbit-trigger-springboot/src/README.md → java11-full-rabbit-trigger-springboot/src/README.md


+ 0 - 0
rabbit-trigger-springboot/src/code/HELP.md → java11-full-rabbit-trigger-springboot/src/code/HELP.md


+ 0 - 0
rabbit-trigger-springboot/src/code/mvnw → java11-full-rabbit-trigger-springboot/src/code/mvnw


+ 0 - 0
rabbit-trigger-springboot/src/code/mvnw.cmd → java11-full-rabbit-trigger-springboot/src/code/mvnw.cmd


+ 0 - 0
rabbit-trigger-springboot/src/code/pom.xml → java11-full-rabbit-trigger-springboot/src/code/pom.xml


+ 0 - 0
rabbit-trigger-springboot/src/code/src/main/java/com/example/demo/DemoApplication.java → java11-full-rabbit-trigger-springboot/src/code/src/main/java/com/example/demo/DemoApplication.java


+ 0 - 0
rabbit-trigger-springboot/src/code/src/main/java/com/example/demo/controller/DemoController.java → java11-full-rabbit-trigger-springboot/src/code/src/main/java/com/example/demo/controller/DemoController.java


+ 0 - 0
rabbit-trigger-springboot/src/code/src/main/resources/application.properties → java11-full-rabbit-trigger-springboot/src/code/src/main/resources/application.properties


+ 0 - 0
rabbit-trigger-springboot/src/code/src/test/java/com/example/demo/DemoApplicationTests.java → java11-full-rabbit-trigger-springboot/src/code/src/test/java/com/example/demo/DemoApplicationTests.java


+ 0 - 0
rabbit-trigger-springboot/src/event-example/rabbitmq-eventbridge-fc-sample.json → java11-full-rabbit-trigger-springboot/src/event-example/rabbitmq-eventbridge-fc-sample.json


+ 0 - 0
rabbit-trigger-springboot/src/s.yaml → java11-full-rabbit-trigger-springboot/src/s.yaml


+ 0 - 0
rds-mysql-http-java11/publish.yaml → java11-full-rds-mysql-http-java11/publish.yaml


+ 0 - 0
rds-mysql-http-java11/readme.md → java11-full-rds-mysql-http-java11/readme.md


+ 0 - 0
rds-mysql-http-java11/src/Makefile → java11-full-rds-mysql-http-java11/src/Makefile


+ 0 - 0
rds-mysql-http-java11/src/README.md → java11-full-rds-mysql-http-java11/src/README.md


+ 0 - 0
rds-mysql-http-java11/src/assets/20220411105111.jpg → java11-full-rds-mysql-http-java11/src/assets/20220411105111.jpg


+ 0 - 0
rds-mysql-http-java11/src/assets/20220411105312.jpg → java11-full-rds-mysql-http-java11/src/assets/20220411105312.jpg


+ 0 - 0
rds-mysql-http-java11/src/code/pom.xml → java11-full-rds-mysql-http-java11/src/code/pom.xml


+ 0 - 0
rds-mysql-http-java11/src/code/src/main/java/example/App.java → java11-full-rds-mysql-http-java11/src/code/src/main/java/example/App.java


+ 0 - 0
rds-mysql-http-java11/src/s.yaml → java11-full-rds-mysql-http-java11/src/s.yaml


+ 0 - 0
rds-mysql-java11/publish.yaml → java11-full-rds-mysql-java11/publish.yaml


+ 0 - 0
rds-mysql-java11/readme.md → java11-full-rds-mysql-java11/readme.md


+ 0 - 0
rds-mysql-java11/src/Makefile → java11-full-rds-mysql-java11/src/Makefile


+ 0 - 0
rds-mysql-java11/src/README.md → java11-full-rds-mysql-java11/src/README.md


+ 0 - 0
rds-mysql-java11/src/assets/20220411105111.jpg → java11-full-rds-mysql-java11/src/assets/20220411105111.jpg


+ 0 - 0
rds-mysql-java11/src/assets/20220411105312.jpg → java11-full-rds-mysql-java11/src/assets/20220411105312.jpg


+ 0 - 0
rds-mysql-java11/src/code/pom.xml → java11-full-rds-mysql-java11/src/code/pom.xml


+ 0 - 0
rds-mysql-java11/src/code/src/main/java/example/App.java → java11-full-rds-mysql-java11/src/code/src/main/java/example/App.java


+ 0 - 0
rds-mysql-java11/src/s.yaml → java11-full-rds-mysql-java11/src/s.yaml


+ 0 - 0
timer-trigger-java/README-en.md → java11-full-timer-trigger-java/README-en.md


+ 0 - 0
timer-trigger-java/README.md → java11-full-timer-trigger-java/README.md


+ 0 - 0
timer-trigger-java/publish.yaml → java11-full-timer-trigger-java/publish.yaml


+ 0 - 0
timer-trigger-java/src/Makefile → java11-full-timer-trigger-java/src/Makefile


+ 0 - 0
timer-trigger-java/src/README-en.md → java11-full-timer-trigger-java/src/README-en.md


+ 0 - 0
timer-trigger-java/src/README.md → java11-full-timer-trigger-java/src/README.md


+ 0 - 0
timer-trigger-java/src/code/pom.xml → java11-full-timer-trigger-java/src/code/pom.xml


+ 0 - 0
timer-trigger-java/src/code/src/main/java/example/App.java → java11-full-timer-trigger-java/src/code/src/main/java/example/App.java


+ 0 - 0
timer-trigger-java/src/event-example/timer-fc-sample.json → java11-full-timer-trigger-java/src/event-example/timer-fc-sample.json


+ 0 - 0
timer-trigger-java/src/s.yaml → java11-full-timer-trigger-java/src/s.yaml


+ 84 - 0
mimic-real-msg/README.md

@@ -0,0 +1,84 @@
+# java11 POJO 事件回调示例程序
+本示例为您展示了 Java runtime 的 POJO 事件回调示例程序。
+
+
+## 准备开始
+- [可选] 安装并配置 Serverless Devs 工具。(https://help.aliyun.com/document_detail/195474.html)
+
+## 快速开始
+### 方式一、使用 Serverless Devs 工具编译部署
+
+#### 1. 修改 s.yaml 配置
+- 根据需要修改 access 配置
+
+#### 2. 安装依赖并部署
+
+编译部署代码包
+```shell
+s deploy
+```
+> 注意: `pom.xml` 中有配置 `pre-deploy` 脚本 `mvn package`, 在部署前会调用 `mvn package` 编译打包。
+
+#### 3. 调用测试
+
+```shell
+s invoke --event-file event.json
+```
+
+调用函数时收到的响应如下所示:
+
+```bash
+
+Reading event file content:
+{
+  "firstName": "FC",
+  "lastName": "aliyun"
+}
+========= FC invoke Logs begin =========
+FC Invoke Start RequestId: fa3e5ad1-55dd-48ad-9d28-xxxxxxxxx
+FC Invoke End RequestId: fa3e5ad1-55dd-48ad-9d28-xxxxxxxxx
+
+Duration: 311.60 ms, Billed Duration: 312 ms, Memory Size: 128 MB, Max Memory Used: 97.50 MB
+========= FC invoke Logs end =========
+
+FC Invoke Result:
+{"message":"Hello, FC aliyun"}
+
+
+End of method: invoke
+```
+
+### 方式二、使用控制台创建
+
+#### 1. 编译打包
+```shell
+# 编译部署
+mvn package
+# 打包文件
+cd target && zip -r java11-pojo-event-blank.zip *
+```
+#### 2. 创建函数
+选择服务(或创建服务)后,单击创建函数,如图所示
+- 选择 `从零开始创建`
+- 填入函数名称
+- 选择运行环境 java11/java8
+- 选择函数触发方式:通过事件请求触发
+- [请求处理程序](https://help.aliyun.com/document_detail/432663.html)(函数入口)设为:example.PojoHandler::handleRequest
+- 其他设置使用默认
+
+![img_1.png](assets/20220608155705.jpg)
+
+> 详细创建函数流程见文档: [使用控制台创建函数](hhttps://help.aliyun.com/document_detail/51783.html)
+
+
+#### 3. 配置测试参数
+在函数管理页面的测试函数标签栏配置测试参数
+
+![img_2.png](assets/20220608155906.jpg)
+
+#### 4. 测试函数
+
+返回结果如下所示
+```bash
+{"message":"Hello, FC aliyun"}
+```

+ 6 - 0
mimic-real-msg/event.json

@@ -0,0 +1,6 @@
+{
+  "ossFileList": [
+    "oss://yyc-algo-test/image-dup-check/multi-modal-embedding-img-search/1.jpg",
+    "oss://yyc-algo-test/image-dup-check/multi-modal-embedding-img-search/2.jpg"
+  ]
+}

+ 92 - 0
mimic-real-msg/pom.xml

@@ -0,0 +1,92 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>yyc-ai</groupId>
+  <artifactId>mimic-real-msg</artifactId>
+  <packaging>jar</packaging>
+  <version>1.0-SNAPSHOT</version>
+  <name>MimicRealMsg</name>
+
+  <dependencies>
+    <dependency>
+      <groupId>com.yaoyicloud.ai.pipeline</groupId>
+      <artifactId>yyc-fc-api</artifactId>
+      <version>1.0-SNAPSHOT</version>
+    </dependency>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>4.13.2</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.mockito</groupId>
+      <artifactId>mockito-core</artifactId>
+      <version>4.11.0</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>com.aliyun.fc.runtime</groupId>
+      <artifactId>fc-java-core</artifactId>
+      <version>1.4.1</version>
+    </dependency>
+    <dependency>
+      <groupId>org.projectlombok</groupId>
+      <artifactId>lombok</artifactId>
+      <version>1.18.30</version>
+      <scope>provided</scope>
+    </dependency>
+  </dependencies>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-compiler-plugin</artifactId>
+        <version>3.8.1</version>
+        <configuration>
+          <source>11</source>
+          <target>11</target>
+          <annotationProcessorPaths>
+            <path>
+              <groupId>org.projectlombok</groupId>
+              <artifactId>lombok</artifactId>
+              <version>1.18.30</version>
+            </path>
+          </annotationProcessorPaths>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-shade-plugin</artifactId>
+        <version>3.2.1</version>
+        <executions>
+          <execution>
+            <phase>package</phase>
+            <goals>
+              <goal>shade</goal>
+            </goals>
+            <configuration>
+              <filters>
+                <filter>
+                  <artifact>*:*</artifact>
+                  <excludes>
+                    <exclude>META-INF/*.SF</exclude>
+                    <exclude>META-INF/*.DSA</exclude>
+                    <exclude>META-INF/*.RSA</exclude>
+                  </excludes>
+                </filter>
+              </filters>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+    </plugins>
+  </build>
+
+  <properties>
+    <maven.compiler.target>11</maven.compiler.target>
+    <maven.compiler.source>11</maven.compiler.source>
+    <maven.test.skip>false</maven.test.skip>
+  </properties>
+</project>

+ 20 - 0
mimic-real-msg/src/main/java/com/yaoyicloud/ai/pipeline/fc/MimicRealMsgHandler.java

@@ -0,0 +1,20 @@
+package com.yaoyicloud.ai.pipeline.fc;
+
+import java.util.List;
+import java.util.stream.Collectors;
+
+import com.aliyun.fc.runtime.Context;
+import com.aliyun.fc.runtime.PojoRequestHandler;
+
+public class MimicRealMsgHandler implements PojoRequestHandler<OssTestDataSet, TaskContentMsgs> {
+
+	@Override
+	public TaskContentMsgs handleRequest(OssTestDataSet request, Context context) {
+		System.out.println("Fake the task msg with oss images");
+		return new TaskContentMsgs(
+			request.getOssFileList().stream()
+				.map(ossFile -> new TaskContentMsgs.Message("appId1", "testTask1", "testUser1", List.of(ossFile)))
+				.collect(Collectors.toList()));
+	}
+
+}

+ 49 - 0
mimic-real-msg/src/test/java/com/yaoyicloud/ai/pipeline/fc/MimicRealMsgHandlerTest.java

@@ -0,0 +1,49 @@
+package com.yaoyicloud.ai.pipeline.fc;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+
+import java.util.List;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.junit.MockitoJUnitRunner;
+
+import com.aliyun.fc.runtime.Context;
+
+@RunWith(MockitoJUnitRunner.class)
+public class MimicRealMsgHandlerTest {
+
+    @Mock
+    private Context context;
+
+    private MimicRealMsgHandler handler;
+
+    @Before
+    public void setUp() {
+        handler = new MimicRealMsgHandler();
+    }
+
+    @Test
+    public void testHandleRequest() {
+        OssTestDataSet request = new OssTestDataSet(List.of("ossFile1", "ossFile2"));
+
+        TaskContentMsgs response = handler.handleRequest(request, context);
+
+        assertNotNull(response);
+        assertEquals(2, response.getItems().size());
+
+        TaskContentMsgs.Message msg1 = response.getItems().get(0);
+        assertEquals("testTask1", msg1.getTaskId());
+        assertEquals("testUser1", msg1.getUserId());
+        assertEquals(List.of("ossFile1"), msg1.getImgList());
+
+        TaskContentMsgs.Message msg2 = response.getItems().get(1);
+        assertEquals("testTask1", msg2.getTaskId());
+        assertEquals("testUser1", msg2.getUserId());
+        assertEquals(List.of("ossFile2"), msg2.getImgList());
+    }
+
+}

+ 11 - 7
pom.xml

@@ -8,6 +8,9 @@
   <name>FC Java Parent</name>
 
   <modules>
+    <!-- 共享API -->
+    <module>yyc-fc-api</module>
+
     <!-- 阿里云示例 -->
     <module>java11-blank-stream-event</module>
     <module>java11-blank-pojo-event</module>
@@ -15,16 +18,17 @@
     <module>java11-mongodb</module>
     <module>java11-mysql</module>
     <module>java11-oss</module>
-    <module>timer-trigger-java/src/code</module>
-    <module>rds-mysql-http-java11/src/code</module>
-    <module>rabbit-trigger-springboot/src/code</module>
-    <module>oss-trigger-java/src/code</module>
-    <module>mongodb-java/src/code</module>
-    <module>rds-mysql-java11/src/code</module>
-    <module>mongodb-java-http/src/code</module>
+    <module>java11-full-timer-trigger-java/src/code</module>
+    <module>java11-full-rds-mysql-http-java11/src/code</module>
+    <module>java11-full-rabbit-trigger-springboot/src/code</module>
+    <module>java11-full-oss-trigger-java/src/code</module>
+    <module>java11-full-mongodb-java/src/code</module>
+    <module>java11-full-rds-mysql-java11/src/code</module>
+    <module>java11-full-mongodb-java-http/src/code</module>
 
     <!-- YYC的框架云函数 -->
     <module>read-oss-test-data</module>
+    <module>mimic-real-msg</module>
   </modules>
 
   <properties>

+ 13 - 28
read-oss-test-data/pom.xml

@@ -1,6 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
 <project xmlns="http://maven.apache.org/POM/4.0.0"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
+
   <groupId>yyc-ai</groupId>
   <artifactId>read-oss-test-data</artifactId>
   <packaging>jar</packaging>
@@ -8,6 +10,16 @@
   <name>ReadOssTestData</name>
 
   <dependencies>
+    <dependency>
+      <groupId>com.yaoyicloud.ai.pipeline</groupId>
+      <artifactId>yyc-fc-api</artifactId>
+      <version>1.0-SNAPSHOT</version>
+    </dependency>
+    <dependency>
+      <groupId>com.aliyun.fc.runtime</groupId>
+      <artifactId>fc-java-core</artifactId>
+      <version>1.4.1</version>
+    </dependency>
     <dependency>
       <groupId>junit</groupId>
       <artifactId>junit</artifactId>
@@ -20,37 +32,10 @@
       <version>4.11.0</version>
       <scope>test</scope>
     </dependency>
-    <dependency>
-      <groupId>com.aliyun.fc.runtime</groupId>
-      <artifactId>fc-java-core</artifactId>
-      <version>1.4.1</version>
-    </dependency>
-    <dependency>
-      <groupId>org.projectlombok</groupId>
-      <artifactId>lombok</artifactId>
-      <version>1.18.30</version>
-      <scope>provided</scope>
-    </dependency>
   </dependencies>
 
   <build>
     <plugins>
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-compiler-plugin</artifactId>
-        <version>3.8.1</version>
-        <configuration>
-          <source>11</source>
-          <target>11</target>
-          <annotationProcessorPaths>
-            <path>
-              <groupId>org.projectlombok</groupId>
-              <artifactId>lombok</artifactId>
-              <version>1.18.30</version>
-            </path>
-          </annotationProcessorPaths>
-        </configuration>
-      </plugin>
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-shade-plugin</artifactId>
@@ -84,4 +69,4 @@
     <maven.compiler.source>11</maven.compiler.source>
     <maven.test.skip>false</maven.test.skip>
   </properties>
-</project>
+</project>

+ 3 - 3
read-oss-test-data/src/main/java/com/yaoyicloud/ai/pipeline/fc/ReadOssTestDataHandler.java

@@ -5,12 +5,12 @@ import java.util.List;
 import com.aliyun.fc.runtime.Context;
 import com.aliyun.fc.runtime.PojoRequestHandler;
 
-public class ReadOssTestDataHandler implements PojoRequestHandler<ReadOssTestDataRequest, ReadOssTestDataResponse> {
+public class ReadOssTestDataHandler implements PojoRequestHandler<ReadOssTestDataRequest, OssTestDataSet> {
 
 	@Override
-	public ReadOssTestDataResponse handleRequest(ReadOssTestDataRequest request, Context context) {
+	public OssTestDataSet handleRequest(ReadOssTestDataRequest request, Context context) {
 		System.out.println("Listing the files with prefix " + request.getOssPrefix());
-		return new ReadOssTestDataResponse(List.of(request.getOssPrefix() + "1.jpg", request.getOssPrefix() + "2.jpg"));
+		return new OssTestDataSet(List.of(request.getOssPrefix() + "1.jpg", request.getOssPrefix() + "2.jpg"));
 	}
 
 }

+ 0 - 12
read-oss-test-data/src/main/java/com/yaoyicloud/ai/pipeline/fc/ReadOssTestDataResponse.java

@@ -1,12 +0,0 @@
-package com.yaoyicloud.ai.pipeline.fc;
-
-import java.util.List;
-
-import lombok.Data;
-
-@Data
-public class ReadOssTestDataResponse {
-
-	private final List<String> ossFileList;
-
-}

+ 2 - 3
read-oss-test-data/src/test/java/com/yaoyicloud/ai/pipeline/fc/ReadOssTestDataHandlerTest.java

@@ -28,10 +28,9 @@ public class ReadOssTestDataHandlerTest {
 
     @Test
     public void testHandleRequest() {
-        ReadOssTestDataRequest request = new ReadOssTestDataRequest();
-        request.setOssPrefix("test/");
+        ReadOssTestDataRequest request = new ReadOssTestDataRequest("test/");
 
-        ReadOssTestDataResponse response = handler.handleRequest(request, context);
+        OssTestDataSet response = handler.handleRequest(request, context);
 
         assertNotNull(response);
         assertEquals(List.of("test/1.jpg", "test/2.jpg"), response.getOssFileList());

+ 40 - 0
yyc-fc-api/pom.xml

@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>com.yaoyicloud.ai.pipeline</groupId>
+  <artifactId>yyc-fc-api</artifactId>
+  <packaging>jar</packaging>
+  <version>1.0-SNAPSHOT</version>
+  <name>YYC FC API</name>
+
+  <dependencies>
+    <dependency>
+      <groupId>org.projectlombok</groupId>
+      <artifactId>lombok</artifactId>
+      <version>1.18.30</version>
+      <scope>provided</scope>
+    </dependency>
+  </dependencies>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-compiler-plugin</artifactId>
+        <version>3.8.1</version>
+        <configuration>
+          <source>11</source>
+          <target>11</target>
+          <annotationProcessorPaths>
+            <path>
+              <groupId>org.projectlombok</groupId>
+              <artifactId>lombok</artifactId>
+              <version>1.18.30</version>
+            </path>
+          </annotationProcessorPaths>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+</project>

+ 16 - 0
yyc-fc-api/src/main/java/com/yaoyicloud/ai/pipeline/fc/OssTestDataSet.java

@@ -0,0 +1,16 @@
+package com.yaoyicloud.ai.pipeline.fc;
+
+import java.util.List;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class OssTestDataSet {
+
+	private List<String> ossFileList;
+
+}

+ 4 - 0
read-oss-test-data/src/main/java/com/yaoyicloud/ai/pipeline/fc/ReadOssTestDataRequest.java → yyc-fc-api/src/main/java/com/yaoyicloud/ai/pipeline/fc/ReadOssTestDataRequest.java

@@ -1,8 +1,12 @@
 package com.yaoyicloud.ai.pipeline.fc;
 
+import lombok.AllArgsConstructor;
 import lombok.Data;
+import lombok.NoArgsConstructor;
 
 @Data
+@NoArgsConstructor
+@AllArgsConstructor
 public class ReadOssTestDataRequest {
 
 	private String ossPrefix;

+ 29 - 0
yyc-fc-api/src/main/java/com/yaoyicloud/ai/pipeline/fc/TaskContentMsgs.java

@@ -0,0 +1,29 @@
+package com.yaoyicloud.ai.pipeline.fc;
+
+import java.util.List;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class TaskContentMsgs {
+
+	private List<Message> items;
+
+	@Data
+	@NoArgsConstructor
+	@AllArgsConstructor
+	public static class Message {
+
+		private String appId;
+
+		private String taskId;
+
+		private String userId;
+
+		private List<String> imgList;
+	}
+}