This is an automated email from the ASF dual-hosted git repository.

qiaojialin pushed a commit to branch add_rpc_doc
in repository https://gitbox.apache.org/repos/asf/incubator-iotdb.git

commit bbd7856224ee38e8abe0cca0d27ca8bb3a1ed44e
Author: qiaojialin <[email protected]>
AuthorDate: Sat May 23 11:01:34 2020 +0800

    add client doc
---
 docs/SystemDesign/8-Client/1-RPC.md    | 50 ++++++++++++++++++++++++++++++++++
 docs/zh/SystemDesign/8-Client/1-RPC.md | 50 ++++++++++++++++++++++++++++++++++
 site/src/main/.vuepress/config.js      | 12 ++++++++
 3 files changed, 112 insertions(+)

diff --git a/docs/SystemDesign/8-Client/1-RPC.md 
b/docs/SystemDesign/8-Client/1-RPC.md
new file mode 100644
index 0000000..68f45ea
--- /dev/null
+++ b/docs/SystemDesign/8-Client/1-RPC.md
@@ -0,0 +1,50 @@
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+        http://www.apache.org/licenses/LICENSE-2.0
+
+    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.
+
+-->
+
+## Rpc definition file
+
+We use thrift rpc between client and server, the definition file is :
+
+service-rpc/src/main/thrift/rpc.thrift
+
+You can add struct and corresponding method in TSIService (service)
+
+## Code generation
+
+```
+mvn clean compile -pl service-rpc -am -DskipTests
+```
+
+Generated codes:
+
+service-rpc/target/generated-sources/thrift/org/apache/iotdb/service/rpc/thrift
+
+## Implement the new interface
+
+java client is in Session:
+
+session/src/main/java/org/apache/iotdb/session/Session.java
+
+Rpc service implementation is: 
+
+server/src/main/java/org/apache/iotdb/db/service/TSServiceImpl.java
+
+
diff --git a/docs/zh/SystemDesign/8-Client/1-RPC.md 
b/docs/zh/SystemDesign/8-Client/1-RPC.md
new file mode 100644
index 0000000..5a63894
--- /dev/null
+++ b/docs/zh/SystemDesign/8-Client/1-RPC.md
@@ -0,0 +1,50 @@
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+        http://www.apache.org/licenses/LICENSE-2.0
+
+    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.
+
+-->
+
+## 增加 RPC 方法
+
+我们使用 Thrift Rpc 框架, thrift 定义文件目录:
+
+service-rpc/src/main/thrift/rpc.thrift
+
+可按需增加 struct 结构,并在 service TSIService 中增加对应方法
+
+## 生成代码
+
+```
+mvn clean compile -pl service-rpc -am -DskipTests
+```
+
+生成代码位置:
+
+service-rpc/target/generated-sources/thrift/org/apache/iotdb/service/rpc/thrift
+
+## 实现新接口
+
+java 客户端在 Session 类中
+
+session/src/main/java/org/apache/iotdb/session/Session.java
+
+服务器端代码在
+
+server/src/main/java/org/apache/iotdb/db/service/TSServiceImpl.java
+
+
diff --git a/site/src/main/.vuepress/config.js 
b/site/src/main/.vuepress/config.js
index 24a104b..ba279ca 100644
--- a/site/src/main/.vuepress/config.js
+++ b/site/src/main/.vuepress/config.js
@@ -470,6 +470,12 @@ var config = {
                                                        
['7-Connector/4-Spark-IOTDB','Spark-IOTDB']
                                                ]
                                        },
+                                       {
+                                               title: '8-Client',
+                                               children: [
+                                                       ['8-Client/1-RPC','RPC']
+                                               ]
+                                       },
                                ],
                        }
                  },
@@ -885,6 +891,12 @@ var config = {
                                                        
['7-Connector/4-Spark-IOTDB','Spark-IOTDB']
                                                ]
                                        },
+                                       {
+                                               title: '8-客户端',
+                                               children: [
+                                                       ['8-Client/1-RPC','RPC']
+                                               ]
+                                       },
                                ],
                        }
                  }

Reply via email to