forked from rethinkdb/rethinkdb-java
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathGlobalOptions.java
More file actions
40 lines (29 loc) · 990 Bytes
/
GlobalOptions.java
File metadata and controls
40 lines (29 loc) · 990 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
package com.rethinkdb.gen.model;
import java.util.*;
import com.rethinkdb.model.*;
import com.rethinkdb.gen.ast.*;
public class GlobalOptions {
% for option_name, type_ in global_optargs:
private Optional<${type_}> _${option_name} = Optional.empty();
% endfor
public OptArgs toOptArgs() {
OptArgs ret = new OptArgs();
%for option_name, type_ in global_optargs:
_${option_name}.ifPresent(val ->
ret.with("${option_name}", val));
%endfor
return ret;
}
% for option_name, type_ in global_optargs:
public static GlobalOptions with${camel(option_name)}(${type_} ${option_name}) {
return new GlobalOptions().${option_name}(${option_name});
}
public GlobalOptions ${option_name}(${type_} ${option_name}) {
_${option_name} = Optional.of(${option_name});
return this;
}
public Optional<${type_}> ${option_name}() {
return _${option_name};
}
% endfor
}