@@ -63,216 +63,211 @@ import (
63
63
"github.com/tarantool/go-tarantool"
64
64
)
65
65
66
- // Request helps to work with session settings.
67
- type Request struct {
68
- get * tarantool.SelectRequest
69
- set * tarantool.UpdateRequest
66
+ // SetRequest helps to set session settings.
67
+ type SetRequest struct {
68
+ impl * tarantool.UpdateRequest
70
69
}
71
70
72
- func (req * Request ) assertBuiltWithNew () {
73
- if (req .get == nil ) && (req .set == nil ) {
74
- panic ("Invalid settings.Request (empty), possibly build not with New*Request function" )
75
- }
76
-
77
- if (req .get != nil ) && (req .set != nil ) {
78
- panic ("Invalid settings.Request (both types), possibly build not with New*Request function" )
79
- }
80
- }
81
-
82
- func newSetRequest (setting string , value interface {}) * Request {
83
- return & Request {
84
- set : tarantool .NewUpdateRequest (sessionSettingsSpace ).
71
+ func newSetRequest (setting string , value interface {}) * SetRequest {
72
+ return & SetRequest {
73
+ impl : tarantool .NewUpdateRequest (sessionSettingsSpace ).
85
74
Key (tarantool.StringKey {S : setting }).
86
75
Operations (tarantool .NewOperations ().Assign (sessionSettingValueField , value )),
87
76
}
88
77
}
89
78
90
- func newGetRequest (setting string ) * Request {
91
- return & Request {
92
- get : tarantool .NewSelectRequest (sessionSettingsSpace ).
93
- Key (tarantool.StringKey {S : setting }).
94
- Limit (1 ),
95
- }
79
+ // Context sets a passed context to set session settings request.
80
+ func (req * SetRequest ) Context (ctx context.Context ) * SetRequest {
81
+ req .impl = req .impl .Context (ctx )
82
+
83
+ return req
96
84
}
97
85
98
- // Context sets a passed context to the session settings request.
99
- func (req * Request ) Context (ctx context.Context ) * Request {
100
- req .assertBuiltWithNew ()
86
+ // Code returns IPROTO code for set session settings request.
87
+ func (req * SetRequest ) Code () int32 {
88
+ return req .impl .Code ()
89
+ }
101
90
102
- if req .set != nil {
103
- req .set = req .set .Context (ctx )
104
- } else {
105
- req .get = req .get .Context (ctx )
106
- }
91
+ // Body fills an encoder with set session settings request body.
92
+ func (req * SetRequest ) Body (res tarantool.SchemaResolver , enc * encoder ) error {
93
+ return req .impl .Body (res , enc )
94
+ }
107
95
108
- return req
96
+ // Ctx returns a context of set session settings request.
97
+ func (req * SetRequest ) Ctx () context.Context {
98
+ return req .impl .Ctx ()
99
+ }
100
+
101
+ // Async returns is set session settings request expects a response.
102
+ func (req * SetRequest ) Async () bool {
103
+ return req .impl .Async ()
109
104
}
110
105
111
- // Code returns IPROTO code for the session settings request.
112
- func (req * Request ) Code () int32 {
113
- req .assertBuiltWithNew ()
106
+ // GetRequest helps to get session settings.
107
+ type GetRequest struct {
108
+ impl * tarantool.SelectRequest
109
+ }
114
110
115
- if req .set != nil {
116
- return req .set .Code ()
111
+ func newGetRequest (setting string ) * GetRequest {
112
+ return & GetRequest {
113
+ impl : tarantool .NewSelectRequest (sessionSettingsSpace ).
114
+ Key (tarantool.StringKey {S : setting }).
115
+ Limit (1 ),
117
116
}
118
- return req .get .Code ()
119
117
}
120
118
121
- // Body fills an encoder with the session settings request body .
122
- func (req * Request ) Body ( res tarantool. SchemaResolver , enc * encoder ) error {
123
- req .assertBuiltWithNew ( )
119
+ // Context sets a passed context to get session settings request.
120
+ func (req * GetRequest ) Context ( ctx context. Context ) * GetRequest {
121
+ req .impl = req . impl . Context ( ctx )
124
122
125
- if req .set != nil {
126
- return req .set .Body (res , enc )
127
- }
128
- return req .get .Body (res , enc )
123
+ return req
129
124
}
130
125
131
- // Ctx returns a context of the session settings request.
132
- func (req * Request ) Ctx () context.Context {
133
- req .assertBuiltWithNew ()
126
+ // Code returns IPROTO code for get session settings request.
127
+ func (req * GetRequest ) Code () int32 {
128
+ return req .impl .Code ()
129
+ }
134
130
135
- if req .set != nil {
136
- return req .set .Ctx ()
137
- }
138
- return req .get .Ctx ()
131
+ // Body fills an encoder with get session settings request body.
132
+ func (req * GetRequest ) Body (res tarantool.SchemaResolver , enc * encoder ) error {
133
+ return req .impl .Body (res , enc )
139
134
}
140
135
141
- // Async returns is the session settings request expects a response.
142
- func (req * Request ) Async () bool {
143
- req .assertBuiltWithNew ()
136
+ // Ctx returns a context of get session settings request.
137
+ func (req * GetRequest ) Ctx () context.Context {
138
+ return req .impl .Ctx ()
139
+ }
144
140
145
- if req .set != nil {
146
- return req .set .Async ()
147
- }
148
- return req .get .Async ()
141
+ // Async returns is get session settings request expects a response.
142
+ func (req * GetRequest ) Async () bool {
143
+ return req .impl .Async ()
149
144
}
150
145
151
146
// NewErrorMarshalingEnabledSetRequest creates a request to
152
147
// update current session ErrorMarshalingEnabled setting.
153
- func NewErrorMarshalingEnabledSetRequest (value bool ) * Request {
148
+ func NewErrorMarshalingEnabledSetRequest (value bool ) * SetRequest {
154
149
return newSetRequest (errorMarshalingEnabled , value )
155
150
}
156
151
157
152
// NewErrorMarshalingEnabledGetRequest creates a request to get
158
153
// current session ErrorMarshalingEnabled setting in tuple format.
159
- func NewErrorMarshalingEnabledGetRequest () * Request {
154
+ func NewErrorMarshalingEnabledGetRequest () * GetRequest {
160
155
return newGetRequest (errorMarshalingEnabled )
161
156
}
162
157
163
158
// NewSQLDefaultEngineSetRequest creates a request to
164
159
// update current session SQLDefaultEngine setting.
165
- func NewSQLDefaultEngineSetRequest (value string ) * Request {
160
+ func NewSQLDefaultEngineSetRequest (value string ) * SetRequest {
166
161
return newSetRequest (sqlDefaultEngine , value )
167
162
}
168
163
169
164
// NewSQLDefaultEngineGetRequest creates a request to get
170
165
// current session SQLDefaultEngine setting in tuple format.
171
- func NewSQLDefaultEngineGetRequest () * Request {
166
+ func NewSQLDefaultEngineGetRequest () * GetRequest {
172
167
return newGetRequest (sqlDefaultEngine )
173
168
}
174
169
175
170
// NewSQLDeferForeignKeysSetRequest creates a request to
176
171
// update current session SQLDeferForeignKeys setting.
177
- func NewSQLDeferForeignKeysSetRequest (value bool ) * Request {
172
+ func NewSQLDeferForeignKeysSetRequest (value bool ) * SetRequest {
178
173
return newSetRequest (sqlDeferForeignKeys , value )
179
174
}
180
175
181
176
// NewSQLDeferForeignKeysGetRequest creates a request to get
182
177
// current session SQLDeferForeignKeys setting in tuple format.
183
- func NewSQLDeferForeignKeysGetRequest () * Request {
178
+ func NewSQLDeferForeignKeysGetRequest () * GetRequest {
184
179
return newGetRequest (sqlDeferForeignKeys )
185
180
}
186
181
187
182
// NewSQLFullColumnNamesSetRequest creates a request to
188
183
// update current session SQLFullColumnNames setting.
189
- func NewSQLFullColumnNamesSetRequest (value bool ) * Request {
184
+ func NewSQLFullColumnNamesSetRequest (value bool ) * SetRequest {
190
185
return newSetRequest (sqlFullColumnNames , value )
191
186
}
192
187
193
188
// NewSQLFullColumnNamesGetRequest creates a request to get
194
189
// current session SQLFullColumnNames setting in tuple format.
195
- func NewSQLFullColumnNamesGetRequest () * Request {
190
+ func NewSQLFullColumnNamesGetRequest () * GetRequest {
196
191
return newGetRequest (sqlFullColumnNames )
197
192
}
198
193
199
194
// NewSQLFullMetadataSetRequest creates a request to
200
195
// update current session SQLFullMetadata setting.
201
- func NewSQLFullMetadataSetRequest (value bool ) * Request {
196
+ func NewSQLFullMetadataSetRequest (value bool ) * SetRequest {
202
197
return newSetRequest (sqlFullMetadata , value )
203
198
}
204
199
205
200
// NewSQLFullMetadataGetRequest creates a request to get
206
201
// current session SQLFullMetadata setting in tuple format.
207
- func NewSQLFullMetadataGetRequest () * Request {
202
+ func NewSQLFullMetadataGetRequest () * GetRequest {
208
203
return newGetRequest (sqlFullMetadata )
209
204
}
210
205
211
206
// NewSQLParserDebugSetRequest creates a request to
212
207
// update current session SQLParserDebug setting.
213
- func NewSQLParserDebugSetRequest (value bool ) * Request {
208
+ func NewSQLParserDebugSetRequest (value bool ) * SetRequest {
214
209
return newSetRequest (sqlParserDebug , value )
215
210
}
216
211
217
212
// NewSQLParserDebugGetRequest creates a request to get
218
213
// current session SQLParserDebug setting in tuple format.
219
- func NewSQLParserDebugGetRequest () * Request {
214
+ func NewSQLParserDebugGetRequest () * GetRequest {
220
215
return newGetRequest (sqlParserDebug )
221
216
}
222
217
223
218
// NewSQLRecursiveTriggersSetRequest creates a request to
224
219
// update current session SQLRecursiveTriggers setting.
225
- func NewSQLRecursiveTriggersSetRequest (value bool ) * Request {
220
+ func NewSQLRecursiveTriggersSetRequest (value bool ) * SetRequest {
226
221
return newSetRequest (sqlRecursiveTriggers , value )
227
222
}
228
223
229
224
// NewSQLRecursiveTriggersGetRequest creates a request to get
230
225
// current session SQLRecursiveTriggers setting in tuple format.
231
- func NewSQLRecursiveTriggersGetRequest () * Request {
226
+ func NewSQLRecursiveTriggersGetRequest () * GetRequest {
232
227
return newGetRequest (sqlRecursiveTriggers )
233
228
}
234
229
235
230
// NewSQLReverseUnorderedSelectsSetRequest creates a request to
236
231
// update current session SQLReverseUnorderedSelects setting.
237
- func NewSQLReverseUnorderedSelectsSetRequest (value bool ) * Request {
232
+ func NewSQLReverseUnorderedSelectsSetRequest (value bool ) * SetRequest {
238
233
return newSetRequest (sqlReverseUnorderedSelects , value )
239
234
}
240
235
241
236
// NewSQLReverseUnorderedSelectsGetRequest creates a request to get
242
237
// current session SQLReverseUnorderedSelects setting in tuple format.
243
- func NewSQLReverseUnorderedSelectsGetRequest () * Request {
238
+ func NewSQLReverseUnorderedSelectsGetRequest () * GetRequest {
244
239
return newGetRequest (sqlReverseUnorderedSelects )
245
240
}
246
241
247
242
// NewSQLSelectDebugSetRequest creates a request to
248
243
// update current session SQLSelectDebug setting.
249
- func NewSQLSelectDebugSetRequest (value bool ) * Request {
244
+ func NewSQLSelectDebugSetRequest (value bool ) * SetRequest {
250
245
return newSetRequest (sqlSelectDebug , value )
251
246
}
252
247
253
248
// NewSQLSelectDebugGetRequest creates a request to get
254
249
// current session SQLSelectDebug setting in tuple format.
255
- func NewSQLSelectDebugGetRequest () * Request {
250
+ func NewSQLSelectDebugGetRequest () * GetRequest {
256
251
return newGetRequest (sqlSelectDebug )
257
252
}
258
253
259
254
// NewSQLVDBEDebugSetRequest creates a request to
260
255
// update current session SQLVDBEDebug setting.
261
- func NewSQLVDBEDebugSetRequest (value bool ) * Request {
256
+ func NewSQLVDBEDebugSetRequest (value bool ) * SetRequest {
262
257
return newSetRequest (sqlVDBEDebug , value )
263
258
}
264
259
265
260
// NewSQLVDBEDebugGetRequest creates a request to get
266
261
// current session SQLVDBEDebug setting in tuple format.
267
- func NewSQLVDBEDebugGetRequest () * Request {
262
+ func NewSQLVDBEDebugGetRequest () * GetRequest {
268
263
return newGetRequest (sqlVDBEDebug )
269
264
}
270
265
271
266
// NewSessionSettingsGetRequest creates a request to get all
272
267
// current session settings in tuple format.
273
- func NewSessionSettingsGetRequest () * Request {
274
- return & Request {
275
- get : tarantool .NewSelectRequest (sessionSettingsSpace ).
268
+ func NewSessionSettingsGetRequest () * GetRequest {
269
+ return & GetRequest {
270
+ impl : tarantool .NewSelectRequest (sessionSettingsSpace ).
276
271
Limit (selectAllLimit ),
277
272
}
278
273
}
0 commit comments