-
Notifications
You must be signed in to change notification settings - Fork 0
/
openapi_type.gen.go
326 lines (256 loc) · 11 KB
/
openapi_type.gen.go
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
// Package v1 provides primitives to interact with the openapi HTTP API.
//
// Code generated by github.com/deepmap/oapi-codegen version v1.8.2 DO NOT EDIT.
package v1
import (
openapi_types "github.com/deepmap/oapi-codegen/pkg/types"
)
const (
BearerAuthScopes = "bearerAuth.Scopes"
)
// Defines values for ResourceType.
const (
ResourceTypeOTHER ResourceType = "OTHER"
ResourceTypePRESENTATION ResourceType = "PRESENTATION"
ResourceTypeTRAININGMANUAL ResourceType = "TRAINING_MANUAL"
ResourceTypeVIDEO ResourceType = "VIDEO"
)
// Defines values for Semester.
const (
SemesterFIRST Semester = "FIRST"
SemesterSECOND Semester = "SECOND"
)
// Defines values for TaskType.
const (
TaskTypeAUTOCODECHECKING TaskType = "AUTO_CODE_CHECKING"
TaskTypeMANUALCHECKING TaskType = "MANUAL_CHECKING"
TaskTypeTESTING TaskType = "TESTING"
)
// AddAutoCodeCheckingTaskRequest defines model for AddAutoCodeCheckingTaskRequest.
type AddAutoCodeCheckingTaskRequest struct {
// Embedded struct due to allOf(#/components/schemas/AddTaskRequest)
AddTaskRequest `yaml:",inline"`
// Embedded struct due to allOf(#/components/schemas/AutoCodeCheckingTaskPart)
AutoCodeCheckingTaskPart `yaml:",inline"`
}
// AddAuxiliaryMaterialRequest defines model for AddAuxiliaryMaterialRequest.
type AddAuxiliaryMaterialRequest AuxiliaryMaterial
// AddCollaboratorToCourseRequest defines model for AddCollaboratorToCourseRequest.
type AddCollaboratorToCourseRequest struct {
Id string `json:"id"`
}
// AddGroupToCourseRequest defines model for AddGroupToCourseRequest.
type AddGroupToCourseRequest struct {
Id string `json:"id"`
}
// AddManualCheckingTaskRequest defines model for AddManualCheckingTaskRequest.
type AddManualCheckingTaskRequest struct {
// Embedded struct due to allOf(#/components/schemas/AddTaskRequest)
AddTaskRequest `yaml:",inline"`
// Embedded struct due to allOf(#/components/schemas/ManualCheckingTaskPart)
ManualCheckingTaskPart `yaml:",inline"`
}
// AddStudentToCourseRequest defines model for AddStudentToCourseRequest.
type AddStudentToCourseRequest struct {
Id string `json:"id"`
}
// AddTaskRequest defines model for AddTaskRequest.
type AddTaskRequest Task
// AddTestingTaskRequest defines model for AddTestingTaskRequest.
type AddTestingTaskRequest struct {
// Embedded struct due to allOf(#/components/schemas/AddTaskRequest)
AddTaskRequest `yaml:",inline"`
// Embedded struct due to allOf(#/components/schemas/TestingTaskPart)
TestingTaskPart `yaml:",inline"`
}
// AutoCodeCheckingTaskPart defines model for AutoCodeCheckingTaskPart.
type AutoCodeCheckingTaskPart struct {
Deadline *Deadline `json:"deadline,omitempty"`
TestData *[]TestData `json:"testData,omitempty"`
}
// AutoCodeCheckingTaskResponse defines model for AutoCodeCheckingTaskResponse.
type AutoCodeCheckingTaskResponse struct {
// Embedded struct due to allOf(#/components/schemas/TaskResponse)
TaskResponse `yaml:",inline"`
// Embedded struct due to allOf(#/components/schemas/AutoCodeCheckingTaskPart)
AutoCodeCheckingTaskPart `yaml:",inline"`
}
// AuxiliaryMaterial defines model for AuxiliaryMaterial.
type AuxiliaryMaterial struct {
Resource string `json:"resource"`
ResourceType ResourceType `json:"resourceType"`
}
// Course defines model for Course.
type Course struct {
CreatorId string `json:"creatorId"`
Id string `json:"id"`
Period CoursePeriod `json:"period"`
Started bool `json:"started"`
TasksNumber int `json:"tasksNumber"`
Title string `json:"title"`
}
// CoursePeriod defines model for CoursePeriod.
type CoursePeriod struct {
AcademicEndYear int `json:"academicEndYear"`
AcademicStartYear int `json:"academicStartYear"`
Semester Semester `json:"semester"`
}
// CreateCourseRequest defines model for CreateCourseRequest.
type CreateCourseRequest struct {
Period CoursePeriod `json:"period"`
Started bool `json:"started"`
Title string `json:"title"`
}
// Deadline defines model for Deadline.
type Deadline struct {
ExcellentGradeTime openapi_types.Date `json:"excellentGradeTime"`
GoodGradeTime openapi_types.Date `json:"goodGradeTime"`
}
// EditCourseRequest defines model for EditCourseRequest.
type EditCourseRequest struct {
Period *CoursePeriod `json:"period,omitempty"`
Started *bool `json:"started,omitempty"`
Title *string `json:"title,omitempty"`
}
// Error defines model for Error.
type Error struct {
Details string `json:"details"`
Slug string `json:"slug"`
}
// ExtendCourseRequest defines model for ExtendCourseRequest.
type ExtendCourseRequest struct {
Period *CoursePeriod `json:"period,omitempty"`
Started bool `json:"started"`
Title string `json:"title"`
}
// GetAllAuxiliaryMaterialsResponse defines model for GetAllAuxiliaryMaterialsResponse.
type GetAllAuxiliaryMaterialsResponse []AuxiliaryMaterial
// GetAllCourseCollaboratorsResponse defines model for GetAllCourseCollaboratorsResponse.
type GetAllCourseCollaboratorsResponse []Teacher
// GetAllCourseStudentsResponse defines model for GetAllCourseStudentsResponse.
type GetAllCourseStudentsResponse []Student
// GetAllCoursesResponse defines model for GetAllCoursesResponse.
type GetAllCoursesResponse []Course
// GetCourseResponse defines model for GetCourseResponse.
type GetCourseResponse Course
// ManualCheckingTaskPart defines model for ManualCheckingTaskPart.
type ManualCheckingTaskPart struct {
Deadline *Deadline `json:"deadline,omitempty"`
}
// ManualCheckingTaskResponse defines model for ManualCheckingTaskResponse.
type ManualCheckingTaskResponse struct {
// Embedded struct due to allOf(#/components/schemas/TaskResponse)
TaskResponse `yaml:",inline"`
// Embedded struct due to allOf(#/components/schemas/ManualCheckingTaskPart)
ManualCheckingTaskPart `yaml:",inline"`
}
// ResourceType defines model for ResourceType.
type ResourceType string
// Semester defines model for Semester.
type Semester string
// Student defines model for Student.
type Student struct {
FullName string `json:"fullName"`
Id string `json:"id"`
}
// Task defines model for Task.
type Task struct {
Description string `json:"description"`
Title string `json:"title"`
Type TaskType `json:"type"`
}
// TaskResponse defines model for TaskResponse.
type TaskResponse struct {
// Embedded struct due to allOf(#/components/schemas/Task)
Task `yaml:",inline"`
// Embedded fields due to inline allOf schema
Number int `json:"number"`
}
// TaskType defines model for TaskType.
type TaskType string
// Teacher defines model for Teacher.
type Teacher struct {
FullName string `json:"fullName"`
Id string `json:"id"`
}
// TestData defines model for TestData.
type TestData struct {
// property not required in response for student, but required for creation
InputData *string `json:"inputData,omitempty"`
// property not required in response for student, but required for creation
OutputData *string `json:"outputData,omitempty"`
}
// TestPoint defines model for TestPoint.
type TestPoint struct {
// property not required in response for student, but required for creation
CorrectVariantNumbers *[]int `json:"correctVariantNumbers,omitempty"`
Description string `json:"description"`
// property indicates that point has single correct variant in response for student
SingleCorrectVariant *bool `json:"singleCorrectVariant,omitempty"`
Variants []string `json:"variants"`
}
// TestingTaskPart defines model for TestingTaskPart.
type TestingTaskPart struct {
Points *[]TestPoint `json:"points,omitempty"`
}
// TestingTaskResponse defines model for TestingTaskResponse.
type TestingTaskResponse struct {
// Embedded struct due to allOf(#/components/schemas/TaskResponse)
TaskResponse `yaml:",inline"`
// Embedded struct due to allOf(#/components/schemas/TestingTaskPart)
TestingTaskPart `yaml:",inline"`
}
// GetAllCoursesParams defines parameters for GetAllCourses.
type GetAllCoursesParams struct {
// course title substring for filtering
Title *string `json:"title,omitempty"`
}
// CreateCourseJSONBody defines parameters for CreateCourse.
type CreateCourseJSONBody CreateCourseRequest
// EditCourseJSONBody defines parameters for EditCourse.
type EditCourseJSONBody EditCourseRequest
// GetAllCourseAuxiliaryMaterialsParams defines parameters for GetAllCourseAuxiliaryMaterials.
type GetAllCourseAuxiliaryMaterialsParams struct {
// resource type for filtering
ResourceType *ResourceType `json:"resourceType,omitempty"`
}
// AttachAuxiliaryMaterialToCourseJSONBody defines parameters for AttachAuxiliaryMaterialToCourse.
type AttachAuxiliaryMaterialToCourseJSONBody AddAuxiliaryMaterialRequest
// AddCollaboratorToCourseJSONBody defines parameters for AddCollaboratorToCourse.
type AddCollaboratorToCourseJSONBody AddCollaboratorToCourseRequest
// ExtendCourseJSONBody defines parameters for ExtendCourse.
type ExtendCourseJSONBody ExtendCourseRequest
// AddGroupToCourseJSONBody defines parameters for AddGroupToCourse.
type AddGroupToCourseJSONBody AddGroupToCourseRequest
// GetAllCourseStudentsParams defines parameters for GetAllCourseStudents.
type GetAllCourseStudentsParams struct {
// student full name substring for filtering
FullName *string `json:"fullName,omitempty"`
}
// AddStudentToCourseJSONBody defines parameters for AddStudentToCourse.
type AddStudentToCourseJSONBody AddStudentToCourseRequest
// GetCourseTasksParams defines parameters for GetCourseTasks.
type GetCourseTasksParams struct {
// type of task for filtering
Type *TaskType `json:"type,omitempty"`
// text for search in tasks title and description
Text *string `json:"text,omitempty"`
}
// AddTaskToCourseJSONBody defines parameters for AddTaskToCourse.
type AddTaskToCourseJSONBody interface{}
// CreateCourseJSONRequestBody defines body for CreateCourse for application/json ContentType.
type CreateCourseJSONRequestBody CreateCourseJSONBody
// EditCourseJSONRequestBody defines body for EditCourse for application/json ContentType.
type EditCourseJSONRequestBody EditCourseJSONBody
// AttachAuxiliaryMaterialToCourseJSONRequestBody defines body for AttachAuxiliaryMaterialToCourse for application/json ContentType.
type AttachAuxiliaryMaterialToCourseJSONRequestBody AttachAuxiliaryMaterialToCourseJSONBody
// AddCollaboratorToCourseJSONRequestBody defines body for AddCollaboratorToCourse for application/json ContentType.
type AddCollaboratorToCourseJSONRequestBody AddCollaboratorToCourseJSONBody
// ExtendCourseJSONRequestBody defines body for ExtendCourse for application/json ContentType.
type ExtendCourseJSONRequestBody ExtendCourseJSONBody
// AddGroupToCourseJSONRequestBody defines body for AddGroupToCourse for application/json ContentType.
type AddGroupToCourseJSONRequestBody AddGroupToCourseJSONBody
// AddStudentToCourseJSONRequestBody defines body for AddStudentToCourse for application/json ContentType.
type AddStudentToCourseJSONRequestBody AddStudentToCourseJSONBody
// AddTaskToCourseJSONRequestBody defines body for AddTaskToCourse for application/json ContentType.
type AddTaskToCourseJSONRequestBody AddTaskToCourseJSONBody