Skip to content

Commit da8437e

Browse files
committed
make standalone project, add to gitignore, formatting
1 parent 574e252 commit da8437e

14 files changed

Lines changed: 102 additions & 100 deletions

File tree

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ mise.toml
1010

1111
# Ignore Gradle build output directory
1212
workers/java/bin
13-
workers/java/build
13+
workers/java/**/build
1414

1515
/loadgen/kitchen-sink-gen/target/
1616

cmd/dev/test.go

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -136,9 +136,7 @@ func runJavaHarnessTests(ctx context.Context, repoDir string) error {
136136
ctx,
137137
harnessDir,
138138
"./gradlew",
139-
"test",
140-
"--tests",
141-
"io.temporal.omes.harness.*",
139+
":harness:test",
142140
); err != nil {
143141
return fmt.Errorf("failed Java harness tests: %w", err)
144142
}

workers/java/build.gradle

Lines changed: 15 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,22 @@
11
plugins {
22
id 'java'
3-
id 'com.google.protobuf' version '0.9.4'
43
id 'com.diffplug.spotless' version '6.18.0'
54
}
65

7-
group 'io.temporal'
8-
version '0.1.0'
6+
allprojects {
7+
group 'io.temporal'
8+
version '0.1.0'
99

10-
java {
11-
sourceCompatibility = JavaVersion.VERSION_1_10
12-
targetCompatibility = JavaVersion.VERSION_1_10
13-
}
10+
repositories {
11+
mavenCentral()
12+
}
1413

15-
repositories {
16-
mavenCentral()
14+
plugins.withType(JavaPlugin) {
15+
java {
16+
sourceCompatibility = JavaVersion.VERSION_1_10
17+
targetCompatibility = JavaVersion.VERSION_1_10
18+
}
19+
}
1720
}
1821

1922
spotless {
@@ -27,72 +30,27 @@ spotless {
2730
}
2831
}
2932

30-
compileJava.dependsOn spotlessJava, generateProto
33+
compileJava.dependsOn spotlessJava
3134

3235
dependencies {
33-
implementation 'ch.qos.logback:logback-classic:1.2.13'
36+
implementation project(':harness')
3437
implementation 'com.google.guava:guava:31.0.1-jre'
3538
implementation 'com.google.code.gson:gson:2.8.9'
3639
implementation 'com.jayway.jsonpath:json-path:2.6.0'
37-
implementation 'info.picocli:picocli:4.6.2'
3840
implementation 'io.temporal:temporal-sdk:1.34.0'
39-
implementation 'org.junit.jupiter:junit-jupiter-api:5.8.1'
4041
implementation 'org.reflections:reflections:0.10.2'
41-
implementation 'net.logstash.logback:logstash-logback-encoder:7.4'
42-
implementation "io.micrometer:micrometer-registry-prometheus"
4342

4443
implementation(platform("com.fasterxml.jackson:jackson-bom:2.15.2"))
4544
implementation "com.fasterxml.jackson.core:jackson-databind"
4645
implementation "com.fasterxml.jackson.core:jackson-core"
4746
implementation 'com.google.protobuf:protobuf-java:3.25.5'
4847
compileOnly 'javax.annotation:javax.annotation-api:1.3.2'
49-
testImplementation 'io.temporal:temporal-testing:1.34.0'
50-
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'
5148
}
5249

5350
sourceSets {
5451
main {
5552
java {
56-
srcDirs = [
57-
'io/temporal/omes',
58-
'harness/src/main/java',
59-
"$buildDir/generated/source/proto/main/java",
60-
"$buildDir/generated/source/proto/main/grpc",
61-
]
62-
}
63-
proto {
64-
srcDirs = ['../proto/harness/api']
65-
include 'api.proto'
66-
}
67-
}
68-
test {
69-
java {
70-
srcDirs = ['harness/src/test/java']
53+
srcDirs = ['io/temporal/omes']
7154
}
7255
}
7356
}
74-
75-
protobuf {
76-
protoc {
77-
artifact = 'com.google.protobuf:protoc:3.25.5'
78-
}
79-
plugins {
80-
grpc {
81-
artifact = 'io.grpc:protoc-gen-grpc-java:1.75.0'
82-
}
83-
}
84-
generateProtoTasks {
85-
all().configureEach { task ->
86-
task.builtins {
87-
java {}
88-
}
89-
task.plugins {
90-
grpc {}
91-
}
92-
}
93-
}
94-
}
95-
96-
test {
97-
useJUnitPlatform()
98-
}

workers/java/harness/build.gradle

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
plugins {
2+
id 'java'
3+
id 'com.google.protobuf' version '0.9.4'
4+
}
5+
6+
compileJava.dependsOn generateProto
7+
8+
dependencies {
9+
compileOnly 'io.temporal:temporal-sdk:1.34.0'
10+
11+
implementation 'ch.qos.logback:logback-classic:1.2.13'
12+
implementation 'com.google.protobuf:protobuf-java:3.25.5'
13+
implementation 'info.picocli:picocli:4.6.2'
14+
implementation 'net.logstash.logback:logstash-logback-encoder:7.4'
15+
implementation 'io.micrometer:micrometer-registry-prometheus'
16+
17+
testImplementation 'io.temporal:temporal-testing:1.34.0'
18+
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1'
19+
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'
20+
}
21+
22+
sourceSets {
23+
main {
24+
proto {
25+
srcDirs = ['../../proto/harness/api']
26+
include 'api.proto'
27+
}
28+
}
29+
}
30+
31+
protobuf {
32+
protoc {
33+
artifact = 'com.google.protobuf:protoc:3.25.5'
34+
}
35+
plugins {
36+
grpc {
37+
artifact = 'io.grpc:protoc-gen-grpc-java:1.75.0'
38+
}
39+
}
40+
generateProtoTasks {
41+
all().configureEach { task ->
42+
task.builtins {
43+
java {}
44+
}
45+
task.plugins {
46+
grpc {}
47+
}
48+
}
49+
}
50+
}
51+
52+
test {
53+
useJUnitPlatform()
54+
}

workers/java/harness/src/main/java/io/temporal/omes/harness/Harness.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,7 @@ public static void run(App app, String... argv) throws Exception {
2929
}
3030

3131
throw new IllegalArgumentException(
32-
String.format(
33-
"Unknown command: [%s]. Expected 'worker' or 'project-server'", argv[0]));
32+
String.format("Unknown command: [%s]. Expected 'worker' or 'project-server'", argv[0]));
3433
}
3534

3635
public static final class App {

workers/java/harness/src/main/java/io/temporal/omes/harness/HarnessClients.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -183,11 +183,11 @@ public String name(String name, Meter.Type type, String baseUnit) {
183183
.reporter(reporter)
184184
.reportEvery(com.uber.m3.util.Duration.ofSeconds(1));
185185
HttpServer scrapeEndpoint =
186-
HarnessMetricsUtils.startPrometheusScrapeEndpoint(registry, promHandlerPath, promListenAddress);
186+
HarnessMetricsUtils.startPrometheusScrapeEndpoint(
187+
registry, promHandlerPath, promListenAddress);
187188
Runtime.getRuntime()
188189
.addShutdownHook(
189-
new Thread(
190-
() -> scrapeEndpoint.stop(1), "omes-java-harness-metrics-shutdown"));
190+
new Thread(() -> scrapeEndpoint.stop(1), "omes-java-harness-metrics-shutdown"));
191191
return scope;
192192
}
193193

workers/java/harness/src/main/java/io/temporal/omes/harness/ProjectHarness.java

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package io.temporal.omes.harness;
22

3-
import io.grpc.BindableService;
43
import io.grpc.Server;
54
import io.grpc.ServerBuilder;
65
import io.grpc.Status;
@@ -23,7 +22,10 @@ static void runProjectServerCli(
2322
throws Exception {
2423
Arguments args = new Arguments();
2524
new CommandLine(args).parseArgs(argv);
26-
Server server = ServerBuilder.forPort(args.port).addService(new ProjectServiceServer(handlers, clientFactory)).build();
25+
Server server =
26+
ServerBuilder.forPort(args.port)
27+
.addService(new ProjectServiceServer(handlers, clientFactory))
28+
.build();
2729
server.start();
2830
logger.info("Project server listening on port {}", server.getPort());
2931
server.awaitTermination();
@@ -168,7 +170,10 @@ public void init(Api.InitRequest request, StreamObserver<Api.InitResponse> respo
168170
handlers.init.init(
169171
createdClient,
170172
new ProjectInitContext(
171-
logger, createdRun, request.getTaskQueue(), request.getConfigJson().toByteArray()));
173+
logger,
174+
createdRun,
175+
request.getTaskQueue(),
176+
request.getConfigJson().toByteArray()));
172177
} catch (Exception e) {
173178
abort(responseObserver, Status.INTERNAL, "init handler failed: " + messageOf(e));
174179
return;
@@ -215,8 +220,7 @@ public void execute(
215220
}
216221
}
217222

218-
private static void abort(
219-
StreamObserver<?> responseObserver, Status status, String description) {
223+
private static void abort(StreamObserver<?> responseObserver, Status status, String description) {
220224
responseObserver.onError(status.withDescription(description).asRuntimeException());
221225
}
222226

workers/java/harness/src/main/java/io/temporal/omes/harness/WorkerHarness.java

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -75,10 +75,7 @@ static void runWorkerCli(
7575
workerRegistrar,
7676
logger,
7777
buildTaskQueues(
78-
logger,
79-
args.taskQueue,
80-
args.taskQueueSuffixIndexStart,
81-
args.taskQueueSuffixIndexEnd),
78+
logger, args.taskQueue, args.taskQueueSuffixIndexStart, args.taskQueueSuffixIndexEnd),
8279
args.errOnUnimplemented,
8380
buildWorkerOptions(args));
8481

@@ -330,14 +327,10 @@ static final class Arguments {
330327
private static final class BooleanFlagConverter implements CommandLine.ITypeConverter<Boolean> {
331328
@Override
332329
public Boolean convert(String value) {
333-
if ("true".equalsIgnoreCase(value)
334-
|| "1".equals(value)
335-
|| "yes".equalsIgnoreCase(value)) {
330+
if ("true".equalsIgnoreCase(value) || "1".equals(value) || "yes".equalsIgnoreCase(value)) {
336331
return true;
337332
}
338-
if ("false".equalsIgnoreCase(value)
339-
|| "0".equals(value)
340-
|| "no".equalsIgnoreCase(value)) {
333+
if ("false".equalsIgnoreCase(value) || "0".equals(value) || "no".equalsIgnoreCase(value)) {
341334
return false;
342335
}
343336
throw new IllegalArgumentException("Invalid boolean value: " + value);

workers/java/harness/src/test/java/io/temporal/omes/harness/ProjectHarnessEchoWorkflow.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@
44
import io.temporal.workflow.WorkflowMethod;
55

66
@WorkflowInterface
7-
public interface ProjectHarnessEchoWorkflow {
8-
@WorkflowMethod
9-
String run(String payload);
10-
}
7+
public interface ProjectHarnessEchoWorkflow {
8+
@WorkflowMethod
9+
String run(String payload);
10+
}
1111

1212
class ProjectHarnessEchoWorkflowImpl implements ProjectHarnessEchoWorkflow {
1313
public ProjectHarnessEchoWorkflowImpl() {}
@@ -16,4 +16,4 @@ public ProjectHarnessEchoWorkflowImpl() {}
1616
public String run(String payload) {
1717
return payload;
1818
}
19-
}
19+
}

workers/java/harness/src/test/java/io/temporal/omes/harness/ProjectHarnessTest.java

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,7 @@ void projectServerExecutesWorkflowAgainstRealTemporalServer() throws Exception {
3636
WorkflowOptions.newBuilder()
3737
.setWorkflowId(
3838
String.format(
39-
"%s-%d",
40-
context.run.executionId, context.iteration))
39+
"%s-%d", context.run.executionId, context.iteration))
4140
.setTaskQueue(context.taskQueue)
4241
.build());
4342
captured.executeClient = client;
@@ -52,13 +51,11 @@ void projectServerExecutesWorkflowAgainstRealTemporalServer() throws Exception {
5251
}),
5352
config -> environment.getWorkflowClient()))) {
5453
server.stub.init(
55-
ProjectHarnessTestSupport.makeInitRequest()
56-
.toBuilder()
54+
ProjectHarnessTestSupport.makeInitRequest().toBuilder()
5755
.setTaskQueue(taskQueue)
5856
.build());
5957
server.stub.execute(
60-
ProjectHarnessTestSupport.makeExecuteRequest()
61-
.toBuilder()
58+
ProjectHarnessTestSupport.makeExecuteRequest().toBuilder()
6259
.setTaskQueue(taskQueue)
6360
.build());
6461
}

0 commit comments

Comments
 (0)