Skip to content

Commit 85f5804

Browse files
authored
Add builder class for records. (#1145)
1 parent d6c44de commit 85f5804

File tree

221 files changed

+12470
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

221 files changed

+12470
-0
lines changed

clients/line-bot-insight-client/src/main/java/com/linecorp/bot/insight/model/AgeTile.java

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,4 +92,36 @@ public enum Age {
9292
}
9393

9494

95+
public static class Builder {
96+
private Age age;
97+
98+
private Double percentage;
99+
100+
101+
102+
public Builder() {
103+
}
104+
105+
public Builder age(Age age) {
106+
this.age = age;
107+
108+
return this;
109+
}
110+
public Builder percentage(Double percentage) {
111+
this.percentage = percentage;
112+
113+
return this;
114+
}
115+
116+
117+
public AgeTile build() {
118+
119+
120+
121+
122+
return new AgeTile(
123+
age,percentage
124+
);
125+
}
126+
}
95127
}

clients/line-bot-insight-client/src/main/java/com/linecorp/bot/insight/model/AppTypeTile.java

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,4 +78,36 @@ public enum AppType {
7878
}
7979

8080

81+
public static class Builder {
82+
private AppType appType;
83+
84+
private Double percentage;
85+
86+
87+
88+
public Builder() {
89+
}
90+
91+
public Builder appType(AppType appType) {
92+
this.appType = appType;
93+
94+
return this;
95+
}
96+
public Builder percentage(Double percentage) {
97+
this.percentage = percentage;
98+
99+
return this;
100+
}
101+
102+
103+
public AppTypeTile build() {
104+
105+
106+
107+
108+
return new AppTypeTile(
109+
appType,percentage
110+
);
111+
}
112+
}
81113
}

clients/line-bot-insight-client/src/main/java/com/linecorp/bot/insight/model/AreaTile.java

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,4 +63,36 @@ public record AreaTile (
6363
) {
6464

6565

66+
public static class Builder {
67+
private String area;
68+
69+
private Double percentage;
70+
71+
72+
73+
public Builder() {
74+
}
75+
76+
public Builder area(String area) {
77+
this.area = area;
78+
79+
return this;
80+
}
81+
public Builder percentage(Double percentage) {
82+
this.percentage = percentage;
83+
84+
return this;
85+
}
86+
87+
88+
public AreaTile build() {
89+
90+
91+
92+
93+
return new AreaTile(
94+
area,percentage
95+
);
96+
}
97+
}
6698
}

clients/line-bot-insight-client/src/main/java/com/linecorp/bot/insight/model/ErrorDetail.java

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,4 +63,36 @@ public record ErrorDetail (
6363
) {
6464

6565

66+
public static class Builder {
67+
private String message;
68+
69+
private String property;
70+
71+
72+
73+
public Builder() {
74+
}
75+
76+
public Builder message(String message) {
77+
this.message = message;
78+
79+
return this;
80+
}
81+
public Builder property(String property) {
82+
this.property = property;
83+
84+
return this;
85+
}
86+
87+
88+
public ErrorDetail build() {
89+
90+
91+
92+
93+
return new ErrorDetail(
94+
message,property
95+
);
96+
}
97+
}
6698
}

clients/line-bot-insight-client/src/main/java/com/linecorp/bot/insight/model/ErrorResponse.java

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,4 +68,44 @@ public record ErrorResponse (
6868
) {
6969

7070

71+
public static class Builder {
72+
private String message;
73+
74+
private boolean message$set;
75+
76+
private List<ErrorDetail> details;
77+
78+
79+
80+
public Builder() {
81+
}
82+
83+
public Builder message(String message) {
84+
this.message = message;
85+
86+
this.message$set = true;
87+
88+
return this;
89+
}
90+
public Builder details(List<ErrorDetail> details) {
91+
this.details = details;
92+
93+
return this;
94+
}
95+
96+
97+
public ErrorResponse build() {
98+
99+
if (!this.message$set) {
100+
throw new IllegalStateException("'message' must be set for ErrorResponse.");
101+
}
102+
103+
104+
105+
106+
return new ErrorResponse(
107+
message,details
108+
);
109+
}
110+
}
71111
}

clients/line-bot-insight-client/src/main/java/com/linecorp/bot/insight/model/GenderTile.java

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,4 +78,36 @@ public enum Gender {
7878
}
7979

8080

81+
public static class Builder {
82+
private Gender gender;
83+
84+
private Double percentage;
85+
86+
87+
88+
public Builder() {
89+
}
90+
91+
public Builder gender(Gender gender) {
92+
this.gender = gender;
93+
94+
return this;
95+
}
96+
public Builder percentage(Double percentage) {
97+
this.percentage = percentage;
98+
99+
return this;
100+
}
101+
102+
103+
public GenderTile build() {
104+
105+
106+
107+
108+
return new GenderTile(
109+
gender,percentage
110+
);
111+
}
112+
}
81113
}

clients/line-bot-insight-client/src/main/java/com/linecorp/bot/insight/model/GetFriendsDemographicsResponse.java

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,4 +96,68 @@ public record GetFriendsDemographicsResponse (
9696
) {
9797

9898

99+
public static class Builder {
100+
private Boolean available;
101+
102+
private List<GenderTile> genders;
103+
104+
private List<AgeTile> ages;
105+
106+
private List<AreaTile> areas;
107+
108+
private List<AppTypeTile> appTypes;
109+
110+
private List<SubscriptionPeriodTile> subscriptionPeriods;
111+
112+
113+
114+
public Builder() {
115+
}
116+
117+
public Builder available(Boolean available) {
118+
this.available = available;
119+
120+
return this;
121+
}
122+
public Builder genders(List<GenderTile> genders) {
123+
this.genders = genders;
124+
125+
return this;
126+
}
127+
public Builder ages(List<AgeTile> ages) {
128+
this.ages = ages;
129+
130+
return this;
131+
}
132+
public Builder areas(List<AreaTile> areas) {
133+
this.areas = areas;
134+
135+
return this;
136+
}
137+
public Builder appTypes(List<AppTypeTile> appTypes) {
138+
this.appTypes = appTypes;
139+
140+
return this;
141+
}
142+
public Builder subscriptionPeriods(List<SubscriptionPeriodTile> subscriptionPeriods) {
143+
this.subscriptionPeriods = subscriptionPeriods;
144+
145+
return this;
146+
}
147+
148+
149+
public GetFriendsDemographicsResponse build() {
150+
151+
152+
153+
154+
155+
156+
157+
158+
return new GetFriendsDemographicsResponse(
159+
available,genders,ages,areas,appTypes,subscriptionPeriods
160+
);
161+
}
162+
}
99163
}

clients/line-bot-insight-client/src/main/java/com/linecorp/bot/insight/model/GetMessageEventResponse.java

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,4 +76,44 @@ public record GetMessageEventResponse (
7676
) {
7777

7878

79+
public static class Builder {
80+
private GetMessageEventResponseOverview overview;
81+
82+
private List<GetMessageEventResponseMessage> messages;
83+
84+
private List<GetMessageEventResponseClick> clicks;
85+
86+
87+
88+
public Builder() {
89+
}
90+
91+
public Builder overview(GetMessageEventResponseOverview overview) {
92+
this.overview = overview;
93+
94+
return this;
95+
}
96+
public Builder messages(List<GetMessageEventResponseMessage> messages) {
97+
this.messages = messages;
98+
99+
return this;
100+
}
101+
public Builder clicks(List<GetMessageEventResponseClick> clicks) {
102+
this.clicks = clicks;
103+
104+
return this;
105+
}
106+
107+
108+
public GetMessageEventResponse build() {
109+
110+
111+
112+
113+
114+
return new GetMessageEventResponse(
115+
overview,messages,clicks
116+
);
117+
}
118+
}
79119
}

0 commit comments

Comments
 (0)