conductor-oss / conductor-oss/java-sdk

Http task: no fluent connectionTimeout() builder method

Open
#134 1 comment 0 reactions 2 assignees Claimed by @kowser-orkes View on GitHub
bug
Dominant language
Java
Stars
12
Forks
10
Avg merge
2d 8h
Merged PRs (30d)
4

Description

## Summary

The `Http` builder class has a fluent `readTimeout(int)` method but no corresponding
`connectionTimeout(int)` method. Users who need to set `connectionTimeOut` must break
the fluent builder chain by calling `getHttpRequest().setConnectionTimeOut(n)` directly.

## Server baseline

Conductor **3.32.0-rc.9**

## Evidence

**Static:**
- `Http.java:84` — `public Http readTimeout(int readTimeout)` exists
- `Http.Input` (line 229-239) — has `connectionTimeOut` field, getter, setter
- No `connectionTimeout()` fluent method on `Http` class

**Live (2026-07-16):** Server correctly reads `connectionTimeOut` from `http_request`
(workflow registered with `connectionTimeOut: 3000` was accepted by Conductor OSS 3.32.0-rc.9).

## Inconsistency

```java
// readTimeout — has fluent method ✓
Http http = new Http("task_ref")
.url("https://example.com")
.method(HttpMethod.GET)
.readTimeout(5000);

// connectionTimeOut — NO fluent method ✗ (must break builder chain)
http.getHttpRequest().setConnectionTimeOut(3000);
```

## Proposed fix

```java
// Http.java — add alongside readTimeout()
public Http connectionTimeout(int connectionTimeout) {
this.httpRequest.setConnectionTimeOut(connectionTimeout);
return this;
}
```

## Related

Discovered during systematic SDK audit against Conductor OSS 3.32.0-rc.9.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.