Skip to content

Commit 223be7f

Browse files
committed
Add initial implementation of OpenSergo gRPC client
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
1 parent 53cd07a commit 223be7f

File tree

4 files changed

+459
-93
lines changed

4 files changed

+459
-93
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# OpenSergo Java SDK

pom.xml

Lines changed: 193 additions & 93 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
<?xml version="1.0" encoding="UTF-8"?>
2-
3-
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
2+
<project xmlns="http://maven.apache.org/POM/4.0.0"
3+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
44
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
55
<modelVersion>4.0.0</modelVersion>
66

77
<groupId>io.opensergo</groupId>
8-
<artifactId>opensergo-java</artifactId>
9-
<version>0.0.1</version>
8+
<artifactId>opensergo-java-sdk</artifactId>
9+
<version>0.1.0-SNAPSHOT</version>
1010

1111
<name>OpenSergo SDK for Java</name>
12-
<url>http://opensergo.io</url>
12+
<url>https://opensergo.io</url>
1313
<description>OpenSergo SDK for Java</description>
1414
<licenses>
1515
<license>
@@ -19,134 +19,234 @@
1919
</license>
2020
</licenses>
2121
<scm>
22-
<connection>scm:git:git@github.com:opensergo/opensergo-java.git</connection>
23-
<developerConnection>scm:git:git@github.com:opensergo/opensergo-java.git</developerConnection>
24-
<url>https://github.com/opensergo/opensergo-java</url>
22+
<connection>scm:git:git@github.com:opensergo/opensergo-java-sdk.git</connection>
23+
<developerConnection>scm:git:git@github.com:opensergo/opensergo-java-sdk.git</developerConnection>
24+
<url>https://github.com/opensergo/opensergo-java-sdk</url>
2525
</scm>
2626
<developers>
2727
<developer>
28-
<name>luyanbo</name>
29-
<email>robert.lyb@alibaba-inc.com</email>
28+
<id>opensergo</id>
29+
<name>OpenSergo Community</name>
30+
<organization>OpenSergo</organization>
31+
<organizationUrl>https://opensergo.io</organizationUrl>
3032
</developer>
3133
</developers>
34+
<organization>
35+
<name>OpenSergo</name>
36+
<url>https://github.com/opensergo</url>
37+
</organization>
38+
<issueManagement>
39+
<system>github</system>
40+
<url>https://github.com/opensergo/opensergo-java-sdk/issues</url>
41+
</issueManagement>
3242

3343
<properties>
34-
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
35-
<maven.compiler.source>1.8</maven.compiler.source>
36-
<maven.compiler.target>1.8</maven.compiler.target>
44+
<java.source.version>1.8</java.source.version>
45+
<java.target.version>1.8</java.target.version>
46+
<java.encoding>UTF-8</java.encoding>
47+
48+
<protobuf.version>3.10.0</protobuf.version>
49+
<grpc.version>1.42.1</grpc.version>
3750

38-
<maven-source-plugin.version>3.2.1</maven-source-plugin.version>
39-
<maven-javadoc-plugin.version>3.1.1</maven-javadoc-plugin.version>
40-
<maven-gpg-plugin.version>3.0.1</maven-gpg-plugin.version>
51+
<!-- Test libs -->
52+
<junit.version>4.12</junit.version>
53+
<mockito.version>2.21.0</mockito.version>
54+
<assertj.version>3.12.1</assertj.version>
55+
56+
<maven.compiler.version>3.8.1</maven.compiler.version>
57+
<maven.surefire.version>2.22.1</maven.surefire.version>
58+
<maven.source.version>3.0.1</maven.source.version>
59+
<maven.javadoc.version>3.0.1</maven.javadoc.version>
60+
<maven.deploy.version>2.8.2</maven.deploy.version>
61+
<maven.gpg.version>1.6</maven.gpg.version>
62+
<maven.jacoco.version>0.8.3</maven.jacoco.version>
63+
<maven.jar.version>3.1.0</maven.jar.version>
64+
<maven.pmd.version>3.8</maven.pmd.version>
4165
</properties>
4266

4367
<dependencies>
44-
<dependency>
45-
<groupId>javax.annotation</groupId>
46-
<artifactId>javax.annotation-api</artifactId>
47-
<version>1.3.2</version>
48-
</dependency>
4968
<dependency>
5069
<groupId>io.grpc</groupId>
51-
<artifactId>grpc-stub</artifactId>
52-
<version>1.44.1</version>
70+
<artifactId>grpc-netty</artifactId>
71+
<version>${grpc.version}</version>
5372
</dependency>
5473
<dependency>
5574
<groupId>io.grpc</groupId>
5675
<artifactId>grpc-protobuf</artifactId>
57-
<version>1.44.1</version>
76+
<version>${grpc.version}</version>
5877
</dependency>
5978
<dependency>
60-
<groupId>junit</groupId>
61-
<artifactId>junit</artifactId>
62-
<version>4.13.2</version>
63-
<scope>test</scope>
79+
<groupId>io.grpc</groupId>
80+
<artifactId>grpc-stub</artifactId>
81+
<version>${grpc.version}</version>
6482
</dependency>
83+
6584
<dependency>
6685
<groupId>com.google.protobuf</groupId>
67-
<artifactId>protobuf-java-util</artifactId>
68-
<version>3.19.4</version>
86+
<artifactId>protobuf-java</artifactId>
87+
<version>${protobuf.version}</version>
88+
</dependency>
89+
90+
<!-- test-scope dependencies -->
91+
<dependency>
92+
<groupId>junit</groupId>
93+
<artifactId>junit</artifactId>
6994
<scope>test</scope>
7095
</dependency>
7196
</dependencies>
7297

98+
<dependencyManagement>
99+
<dependencies>
100+
<dependency>
101+
<groupId>junit</groupId>
102+
<artifactId>junit</artifactId>
103+
<version>${junit.version}</version>
104+
<scope>test</scope>
105+
</dependency>
106+
<dependency>
107+
<groupId>org.mockito</groupId>
108+
<artifactId>mockito-core</artifactId>
109+
<version>${mockito.version}</version>
110+
<scope>test</scope>
111+
</dependency>
112+
<dependency>
113+
<groupId>org.assertj</groupId>
114+
<artifactId>assertj-core</artifactId>
115+
<version>${assertj.version}</version>
116+
<scope>test</scope>
117+
</dependency>
118+
</dependencies>
119+
</dependencyManagement>
120+
73121
<build>
122+
<extensions>
123+
<extension>
124+
<groupId>kr.motd.maven</groupId>
125+
<artifactId>os-maven-plugin</artifactId>
126+
<version>1.6.2</version>
127+
</extension>
128+
</extensions>
129+
74130
<plugins>
75131
<plugin>
76132
<groupId>org.apache.maven.plugins</groupId>
77-
<artifactId>maven-source-plugin</artifactId>
78-
<version>3.2.1</version>
79-
<executions>
80-
<execution>
81-
<id>attach-sources</id>
82-
<goals>
83-
<goal>jar</goal>
84-
</goals>
85-
</execution>
86-
</executions>
87-
</plugin>
88-
<plugin>
89-
<groupId>org.apache.maven.plugins</groupId>
90-
<artifactId>maven-javadoc-plugin</artifactId>
91-
<version>3.3.2</version>
92-
<executions>
93-
<execution>
94-
<id>attach-javadocs</id>
95-
<goals>
96-
<goal>jar</goal>
97-
</goals>
98-
</execution>
99-
</executions>
100-
</plugin>
101-
<plugin>
102-
<groupId>org.apache.maven.plugins</groupId>
103-
<artifactId>maven-gpg-plugin</artifactId>
104-
<version>3.0.1</version>
105-
<executions>
106-
<execution>
107-
<id>sign-artifacts</id>
108-
<phase>verify</phase>
109-
<goals>
110-
<goal>sign</goal>
111-
</goals>
112-
</execution>
113-
</executions>
133+
<artifactId>maven-compiler-plugin</artifactId>
134+
<version>${maven.compiler.version}</version>
135+
<configuration>
136+
<source>${java.source.version}</source>
137+
<target>${java.target.version}</target>
138+
<encoding>${java.encoding}</encoding>
139+
</configuration>
114140
</plugin>
141+
115142
<plugin>
116-
<groupId>org.apache.maven.plugins</groupId>
117-
<artifactId>maven-compiler-plugin</artifactId>
143+
<groupId>org.xolstice.maven.plugins</groupId>
144+
<artifactId>protobuf-maven-plugin</artifactId>
145+
<version>0.6.1</version>
146+
<configuration>
147+
<protocArtifact>com.google.protobuf:protoc:${protobuf.version}:exe:${os.detected.classifier}
148+
</protocArtifact>
149+
<pluginId>grpc-java</pluginId>
150+
<pluginArtifact>io.grpc:protoc-gen-grpc-java:${grpc.version}:exe:${os.detected.classifier}
151+
</pluginArtifact>
152+
</configuration>
118153
<executions>
119154
<execution>
120-
<id>compile</id>
121-
<phase>compile</phase>
122155
<goals>
123156
<goal>compile</goal>
124-
</goals>
125-
</execution>
126-
<execution>
127-
<id>testCompile</id>
128-
<phase>test-compile</phase>
129-
<goals>
130-
<goal>testCompile</goal>
157+
<goal>compile-custom</goal>
131158
</goals>
132159
</execution>
133160
</executions>
134-
<configuration>
135-
<source>8</source>
136-
<target>8</target>
137-
</configuration>
138161
</plugin>
139162
</plugins>
163+
<pluginManagement>
164+
<plugins>
165+
<plugin>
166+
<groupId>org.apache.maven.plugins</groupId>
167+
<artifactId>maven-surefire-plugin</artifactId>
168+
<version>${maven.surefire.version}</version>
169+
</plugin>
170+
<plugin>
171+
<groupId>org.apache.maven.plugins</groupId>
172+
<artifactId>maven-jar-plugin</artifactId>
173+
<version>${maven.jar.version}</version>
174+
</plugin>
175+
<plugin>
176+
<groupId>org.apache.maven.plugins</groupId>
177+
<artifactId>maven-gpg-plugin</artifactId>
178+
<version>${maven.gpg.version}</version>
179+
</plugin>
180+
</plugins>
181+
</pluginManagement>
140182
</build>
141183

142-
<distributionManagement>
143-
<snapshotRepository>
144-
<id>ossrh</id>
145-
<url>https://s01.oss.sonatype.org/content/repositories/snapshots</url>
146-
</snapshotRepository>
147-
<repository>
148-
<id>ossrh</id>
149-
<url>https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/</url>
150-
</repository>
151-
</distributionManagement>
152-
</project>
184+
<profiles>
185+
<profile>
186+
<id>oss</id>
187+
<build>
188+
<plugins>
189+
<!-- Source -->
190+
<plugin>
191+
<groupId>org.apache.maven.plugins</groupId>
192+
<artifactId>maven-source-plugin</artifactId>
193+
<version>${maven.source.version}</version>
194+
<executions>
195+
<execution>
196+
<phase>package</phase>
197+
<goals>
198+
<goal>jar-no-fork</goal>
199+
</goals>
200+
</execution>
201+
</executions>
202+
</plugin>
203+
<!-- Javadoc -->
204+
<plugin>
205+
<groupId>org.apache.maven.plugins</groupId>
206+
<artifactId>maven-javadoc-plugin</artifactId>
207+
<version>${maven.javadoc.version}</version>
208+
<executions>
209+
<execution>
210+
<phase>package</phase>
211+
<goals>
212+
<goal>jar</goal>
213+
</goals>
214+
<configuration>
215+
<locale>en_US</locale>
216+
<encoding>UTF-8</encoding>
217+
<charset>UTF-8</charset>
218+
<doclint>none</doclint>
219+
</configuration>
220+
</execution>
221+
</executions>
222+
</plugin>
223+
<!-- GPG -->
224+
<plugin>
225+
<groupId>org.apache.maven.plugins</groupId>
226+
<artifactId>maven-gpg-plugin</artifactId>
227+
<version>${maven.gpg.version}</version>
228+
<executions>
229+
<execution>
230+
<phase>verify</phase>
231+
<goals>
232+
<goal>sign</goal>
233+
</goals>
234+
</execution>
235+
</executions>
236+
</plugin>
237+
</plugins>
238+
</build>
239+
<distributionManagement>
240+
<snapshotRepository>
241+
<id>oss</id>
242+
<url>https://oss.sonatype.org/content/repositories/snapshots/</url>
243+
</snapshotRepository>
244+
<repository>
245+
<id>oss</id>
246+
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
247+
</repository>
248+
</distributionManagement>
249+
</profile>
250+
</profiles>
251+
252+
</project>

0 commit comments

Comments
 (0)