github.com/yaegashi/msgraph.go@v0.1.4/beta/RequestDrive.go (about) 1 // Code generated by msgraph.go/gen DO NOT EDIT. 2 3 package msgraph 4 5 import ( 6 "context" 7 "fmt" 8 "io/ioutil" 9 "net/http" 10 11 "github.com/yaegashi/msgraph.go/jsonx" 12 ) 13 14 // DriveRequestBuilder is request builder for Drive 15 type DriveRequestBuilder struct{ BaseRequestBuilder } 16 17 // Request returns DriveRequest 18 func (b *DriveRequestBuilder) Request() *DriveRequest { 19 return &DriveRequest{ 20 BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client}, 21 } 22 } 23 24 // DriveRequest is request for Drive 25 type DriveRequest struct{ BaseRequest } 26 27 // Get performs GET request for Drive 28 func (r *DriveRequest) Get(ctx context.Context) (resObj *Drive, err error) { 29 var query string 30 if r.query != nil { 31 query = "?" + r.query.Encode() 32 } 33 err = r.JSONRequest(ctx, "GET", query, nil, &resObj) 34 return 35 } 36 37 // Update performs PATCH request for Drive 38 func (r *DriveRequest) Update(ctx context.Context, reqObj *Drive) error { 39 return r.JSONRequest(ctx, "PATCH", "", reqObj, nil) 40 } 41 42 // Delete performs DELETE request for Drive 43 func (r *DriveRequest) Delete(ctx context.Context) error { 44 return r.JSONRequest(ctx, "DELETE", "", nil, nil) 45 } 46 47 // DriveItemRequestBuilder is request builder for DriveItem 48 type DriveItemRequestBuilder struct{ BaseRequestBuilder } 49 50 // Request returns DriveItemRequest 51 func (b *DriveItemRequestBuilder) Request() *DriveItemRequest { 52 return &DriveItemRequest{ 53 BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client}, 54 } 55 } 56 57 // DriveItemRequest is request for DriveItem 58 type DriveItemRequest struct{ BaseRequest } 59 60 // Get performs GET request for DriveItem 61 func (r *DriveItemRequest) Get(ctx context.Context) (resObj *DriveItem, err error) { 62 var query string 63 if r.query != nil { 64 query = "?" + r.query.Encode() 65 } 66 err = r.JSONRequest(ctx, "GET", query, nil, &resObj) 67 return 68 } 69 70 // Update performs PATCH request for DriveItem 71 func (r *DriveItemRequest) Update(ctx context.Context, reqObj *DriveItem) error { 72 return r.JSONRequest(ctx, "PATCH", "", reqObj, nil) 73 } 74 75 // Delete performs DELETE request for DriveItem 76 func (r *DriveItemRequest) Delete(ctx context.Context) error { 77 return r.JSONRequest(ctx, "DELETE", "", nil, nil) 78 } 79 80 // DriveItemVersionRequestBuilder is request builder for DriveItemVersion 81 type DriveItemVersionRequestBuilder struct{ BaseRequestBuilder } 82 83 // Request returns DriveItemVersionRequest 84 func (b *DriveItemVersionRequestBuilder) Request() *DriveItemVersionRequest { 85 return &DriveItemVersionRequest{ 86 BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client}, 87 } 88 } 89 90 // DriveItemVersionRequest is request for DriveItemVersion 91 type DriveItemVersionRequest struct{ BaseRequest } 92 93 // Get performs GET request for DriveItemVersion 94 func (r *DriveItemVersionRequest) Get(ctx context.Context) (resObj *DriveItemVersion, err error) { 95 var query string 96 if r.query != nil { 97 query = "?" + r.query.Encode() 98 } 99 err = r.JSONRequest(ctx, "GET", query, nil, &resObj) 100 return 101 } 102 103 // Update performs PATCH request for DriveItemVersion 104 func (r *DriveItemVersionRequest) Update(ctx context.Context, reqObj *DriveItemVersion) error { 105 return r.JSONRequest(ctx, "PATCH", "", reqObj, nil) 106 } 107 108 // Delete performs DELETE request for DriveItemVersion 109 func (r *DriveItemVersionRequest) Delete(ctx context.Context) error { 110 return r.JSONRequest(ctx, "DELETE", "", nil, nil) 111 } 112 113 // 114 type DriveItemCheckinRequestBuilder struct{ BaseRequestBuilder } 115 116 // Checkin action undocumented 117 func (b *DriveItemRequestBuilder) Checkin(reqObj *DriveItemCheckinRequestParameter) *DriveItemCheckinRequestBuilder { 118 bb := &DriveItemCheckinRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder} 119 bb.BaseRequestBuilder.baseURL += "/checkin" 120 bb.BaseRequestBuilder.requestObject = reqObj 121 return bb 122 } 123 124 // 125 type DriveItemCheckinRequest struct{ BaseRequest } 126 127 // 128 func (b *DriveItemCheckinRequestBuilder) Request() *DriveItemCheckinRequest { 129 return &DriveItemCheckinRequest{ 130 BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client, requestObject: b.requestObject}, 131 } 132 } 133 134 // 135 func (r *DriveItemCheckinRequest) Post(ctx context.Context) error { 136 return r.JSONRequest(ctx, "POST", "", r.requestObject, nil) 137 } 138 139 // 140 type DriveItemCheckoutRequestBuilder struct{ BaseRequestBuilder } 141 142 // Checkout action undocumented 143 func (b *DriveItemRequestBuilder) Checkout(reqObj *DriveItemCheckoutRequestParameter) *DriveItemCheckoutRequestBuilder { 144 bb := &DriveItemCheckoutRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder} 145 bb.BaseRequestBuilder.baseURL += "/checkout" 146 bb.BaseRequestBuilder.requestObject = reqObj 147 return bb 148 } 149 150 // 151 type DriveItemCheckoutRequest struct{ BaseRequest } 152 153 // 154 func (b *DriveItemCheckoutRequestBuilder) Request() *DriveItemCheckoutRequest { 155 return &DriveItemCheckoutRequest{ 156 BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client, requestObject: b.requestObject}, 157 } 158 } 159 160 // 161 func (r *DriveItemCheckoutRequest) Post(ctx context.Context) error { 162 return r.JSONRequest(ctx, "POST", "", r.requestObject, nil) 163 } 164 165 // 166 type DriveItemCopyRequestBuilder struct{ BaseRequestBuilder } 167 168 // Copy action undocumented 169 func (b *DriveItemRequestBuilder) Copy(reqObj *DriveItemCopyRequestParameter) *DriveItemCopyRequestBuilder { 170 bb := &DriveItemCopyRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder} 171 bb.BaseRequestBuilder.baseURL += "/copy" 172 bb.BaseRequestBuilder.requestObject = reqObj 173 return bb 174 } 175 176 // 177 type DriveItemCopyRequest struct{ BaseRequest } 178 179 // 180 func (b *DriveItemCopyRequestBuilder) Request() *DriveItemCopyRequest { 181 return &DriveItemCopyRequest{ 182 BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client, requestObject: b.requestObject}, 183 } 184 } 185 186 // 187 func (r *DriveItemCopyRequest) Post(ctx context.Context) (resObj *DriveItem, err error) { 188 err = r.JSONRequest(ctx, "POST", "", r.requestObject, &resObj) 189 return 190 } 191 192 // 193 type DriveItemCreateLinkRequestBuilder struct{ BaseRequestBuilder } 194 195 // CreateLink action undocumented 196 func (b *DriveItemRequestBuilder) CreateLink(reqObj *DriveItemCreateLinkRequestParameter) *DriveItemCreateLinkRequestBuilder { 197 bb := &DriveItemCreateLinkRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder} 198 bb.BaseRequestBuilder.baseURL += "/createLink" 199 bb.BaseRequestBuilder.requestObject = reqObj 200 return bb 201 } 202 203 // 204 type DriveItemCreateLinkRequest struct{ BaseRequest } 205 206 // 207 func (b *DriveItemCreateLinkRequestBuilder) Request() *DriveItemCreateLinkRequest { 208 return &DriveItemCreateLinkRequest{ 209 BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client, requestObject: b.requestObject}, 210 } 211 } 212 213 // 214 func (r *DriveItemCreateLinkRequest) Post(ctx context.Context) (resObj *Permission, err error) { 215 err = r.JSONRequest(ctx, "POST", "", r.requestObject, &resObj) 216 return 217 } 218 219 // 220 type DriveItemCreateUploadSessionRequestBuilder struct{ BaseRequestBuilder } 221 222 // CreateUploadSession action undocumented 223 func (b *DriveItemRequestBuilder) CreateUploadSession(reqObj *DriveItemCreateUploadSessionRequestParameter) *DriveItemCreateUploadSessionRequestBuilder { 224 bb := &DriveItemCreateUploadSessionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder} 225 bb.BaseRequestBuilder.baseURL += "/createUploadSession" 226 bb.BaseRequestBuilder.requestObject = reqObj 227 return bb 228 } 229 230 // 231 type DriveItemCreateUploadSessionRequest struct{ BaseRequest } 232 233 // 234 func (b *DriveItemCreateUploadSessionRequestBuilder) Request() *DriveItemCreateUploadSessionRequest { 235 return &DriveItemCreateUploadSessionRequest{ 236 BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client, requestObject: b.requestObject}, 237 } 238 } 239 240 // 241 func (r *DriveItemCreateUploadSessionRequest) Post(ctx context.Context) (resObj *UploadSession, err error) { 242 err = r.JSONRequest(ctx, "POST", "", r.requestObject, &resObj) 243 return 244 } 245 246 // 247 type DriveItemFollowRequestBuilder struct{ BaseRequestBuilder } 248 249 // Follow action undocumented 250 func (b *DriveItemRequestBuilder) Follow(reqObj *DriveItemFollowRequestParameter) *DriveItemFollowRequestBuilder { 251 bb := &DriveItemFollowRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder} 252 bb.BaseRequestBuilder.baseURL += "/follow" 253 bb.BaseRequestBuilder.requestObject = reqObj 254 return bb 255 } 256 257 // 258 type DriveItemFollowRequest struct{ BaseRequest } 259 260 // 261 func (b *DriveItemFollowRequestBuilder) Request() *DriveItemFollowRequest { 262 return &DriveItemFollowRequest{ 263 BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client, requestObject: b.requestObject}, 264 } 265 } 266 267 // 268 func (r *DriveItemFollowRequest) Post(ctx context.Context) (resObj *DriveItem, err error) { 269 err = r.JSONRequest(ctx, "POST", "", r.requestObject, &resObj) 270 return 271 } 272 273 // 274 type DriveItemUnfollowRequestBuilder struct{ BaseRequestBuilder } 275 276 // Unfollow action undocumented 277 func (b *DriveItemRequestBuilder) Unfollow(reqObj *DriveItemUnfollowRequestParameter) *DriveItemUnfollowRequestBuilder { 278 bb := &DriveItemUnfollowRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder} 279 bb.BaseRequestBuilder.baseURL += "/unfollow" 280 bb.BaseRequestBuilder.requestObject = reqObj 281 return bb 282 } 283 284 // 285 type DriveItemUnfollowRequest struct{ BaseRequest } 286 287 // 288 func (b *DriveItemUnfollowRequestBuilder) Request() *DriveItemUnfollowRequest { 289 return &DriveItemUnfollowRequest{ 290 BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client, requestObject: b.requestObject}, 291 } 292 } 293 294 // 295 func (r *DriveItemUnfollowRequest) Post(ctx context.Context) error { 296 return r.JSONRequest(ctx, "POST", "", r.requestObject, nil) 297 } 298 299 // 300 type DriveItemInviteRequestBuilder struct{ BaseRequestBuilder } 301 302 // Invite action undocumented 303 func (b *DriveItemRequestBuilder) Invite(reqObj *DriveItemInviteRequestParameter) *DriveItemInviteRequestBuilder { 304 bb := &DriveItemInviteRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder} 305 bb.BaseRequestBuilder.baseURL += "/invite" 306 bb.BaseRequestBuilder.requestObject = reqObj 307 return bb 308 } 309 310 // 311 type DriveItemInviteRequest struct{ BaseRequest } 312 313 // 314 func (b *DriveItemInviteRequestBuilder) Request() *DriveItemInviteRequest { 315 return &DriveItemInviteRequest{ 316 BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client, requestObject: b.requestObject}, 317 } 318 } 319 320 // 321 func (r *DriveItemInviteRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]Permission, error) { 322 req, err := r.NewJSONRequest(method, path, obj) 323 if err != nil { 324 return nil, err 325 } 326 if ctx != nil { 327 req = req.WithContext(ctx) 328 } 329 res, err := r.client.Do(req) 330 if err != nil { 331 return nil, err 332 } 333 var values []Permission 334 for { 335 if res.StatusCode != http.StatusOK { 336 b, _ := ioutil.ReadAll(res.Body) 337 res.Body.Close() 338 errRes := &ErrorResponse{Response: res} 339 err := jsonx.Unmarshal(b, errRes) 340 if err != nil { 341 return nil, fmt.Errorf("%s: %s", res.Status, string(b)) 342 } 343 return nil, errRes 344 } 345 var ( 346 paging Paging 347 value []Permission 348 ) 349 err := jsonx.NewDecoder(res.Body).Decode(&paging) 350 res.Body.Close() 351 if err != nil { 352 return nil, err 353 } 354 err = jsonx.Unmarshal(paging.Value, &value) 355 if err != nil { 356 return nil, err 357 } 358 values = append(values, value...) 359 if n >= 0 { 360 n-- 361 } 362 if n == 0 || len(paging.NextLink) == 0 { 363 return values, nil 364 } 365 req, err = http.NewRequest("GET", paging.NextLink, nil) 366 if ctx != nil { 367 req = req.WithContext(ctx) 368 } 369 res, err = r.client.Do(req) 370 if err != nil { 371 return nil, err 372 } 373 } 374 } 375 376 // 377 func (r *DriveItemInviteRequest) PostN(ctx context.Context, n int) ([]Permission, error) { 378 return r.Paging(ctx, "POST", "", r.requestObject, n) 379 } 380 381 // 382 func (r *DriveItemInviteRequest) Post(ctx context.Context) ([]Permission, error) { 383 return r.Paging(ctx, "POST", "", r.requestObject, 0) 384 } 385 386 // 387 type DriveItemPreviewRequestBuilder struct{ BaseRequestBuilder } 388 389 // Preview action undocumented 390 func (b *DriveItemRequestBuilder) Preview(reqObj *DriveItemPreviewRequestParameter) *DriveItemPreviewRequestBuilder { 391 bb := &DriveItemPreviewRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder} 392 bb.BaseRequestBuilder.baseURL += "/preview" 393 bb.BaseRequestBuilder.requestObject = reqObj 394 return bb 395 } 396 397 // 398 type DriveItemPreviewRequest struct{ BaseRequest } 399 400 // 401 func (b *DriveItemPreviewRequestBuilder) Request() *DriveItemPreviewRequest { 402 return &DriveItemPreviewRequest{ 403 BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client, requestObject: b.requestObject}, 404 } 405 } 406 407 // 408 func (r *DriveItemPreviewRequest) Post(ctx context.Context) (resObj *ItemPreviewInfo, err error) { 409 err = r.JSONRequest(ctx, "POST", "", r.requestObject, &resObj) 410 return 411 } 412 413 // 414 type DriveItemRestoreRequestBuilder struct{ BaseRequestBuilder } 415 416 // Restore action undocumented 417 func (b *DriveItemRequestBuilder) Restore(reqObj *DriveItemRestoreRequestParameter) *DriveItemRestoreRequestBuilder { 418 bb := &DriveItemRestoreRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder} 419 bb.BaseRequestBuilder.baseURL += "/restore" 420 bb.BaseRequestBuilder.requestObject = reqObj 421 return bb 422 } 423 424 // 425 type DriveItemRestoreRequest struct{ BaseRequest } 426 427 // 428 func (b *DriveItemRestoreRequestBuilder) Request() *DriveItemRestoreRequest { 429 return &DriveItemRestoreRequest{ 430 BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client, requestObject: b.requestObject}, 431 } 432 } 433 434 // 435 func (r *DriveItemRestoreRequest) Post(ctx context.Context) (resObj *DriveItem, err error) { 436 err = r.JSONRequest(ctx, "POST", "", r.requestObject, &resObj) 437 return 438 } 439 440 // 441 type DriveItemValidatePermissionRequestBuilder struct{ BaseRequestBuilder } 442 443 // ValidatePermission action undocumented 444 func (b *DriveItemRequestBuilder) ValidatePermission(reqObj *DriveItemValidatePermissionRequestParameter) *DriveItemValidatePermissionRequestBuilder { 445 bb := &DriveItemValidatePermissionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder} 446 bb.BaseRequestBuilder.baseURL += "/validatePermission" 447 bb.BaseRequestBuilder.requestObject = reqObj 448 return bb 449 } 450 451 // 452 type DriveItemValidatePermissionRequest struct{ BaseRequest } 453 454 // 455 func (b *DriveItemValidatePermissionRequestBuilder) Request() *DriveItemValidatePermissionRequest { 456 return &DriveItemValidatePermissionRequest{ 457 BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client, requestObject: b.requestObject}, 458 } 459 } 460 461 // 462 func (r *DriveItemValidatePermissionRequest) Post(ctx context.Context) error { 463 return r.JSONRequest(ctx, "POST", "", r.requestObject, nil) 464 } 465 466 // 467 type DriveItemVersionRestoreVersionRequestBuilder struct{ BaseRequestBuilder } 468 469 // RestoreVersion action undocumented 470 func (b *DriveItemVersionRequestBuilder) RestoreVersion(reqObj *DriveItemVersionRestoreVersionRequestParameter) *DriveItemVersionRestoreVersionRequestBuilder { 471 bb := &DriveItemVersionRestoreVersionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder} 472 bb.BaseRequestBuilder.baseURL += "/restoreVersion" 473 bb.BaseRequestBuilder.requestObject = reqObj 474 return bb 475 } 476 477 // 478 type DriveItemVersionRestoreVersionRequest struct{ BaseRequest } 479 480 // 481 func (b *DriveItemVersionRestoreVersionRequestBuilder) Request() *DriveItemVersionRestoreVersionRequest { 482 return &DriveItemVersionRestoreVersionRequest{ 483 BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client, requestObject: b.requestObject}, 484 } 485 } 486 487 // 488 func (r *DriveItemVersionRestoreVersionRequest) Post(ctx context.Context) error { 489 return r.JSONRequest(ctx, "POST", "", r.requestObject, nil) 490 }