matterbridge/vendor/github.com/yaegashi/msgraph.go/beta/DeviceManagementTemplateRequest.go

328 lines
12 KiB
Go

// Code generated by msgraph-generate.go DO NOT EDIT.
package msgraph
import (
"context"
"fmt"
"io/ioutil"
"net/http"
"github.com/yaegashi/msgraph.go/jsonx"
)
// DeviceManagementTemplateRequestBuilder is request builder for DeviceManagementTemplate
type DeviceManagementTemplateRequestBuilder struct{ BaseRequestBuilder }
// Request returns DeviceManagementTemplateRequest
func (b *DeviceManagementTemplateRequestBuilder) Request() *DeviceManagementTemplateRequest {
return &DeviceManagementTemplateRequest{
BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
}
}
// DeviceManagementTemplateRequest is request for DeviceManagementTemplate
type DeviceManagementTemplateRequest struct{ BaseRequest }
// Get performs GET request for DeviceManagementTemplate
func (r *DeviceManagementTemplateRequest) Get(ctx context.Context) (resObj *DeviceManagementTemplate, err error) {
var query string
if r.query != nil {
query = "?" + r.query.Encode()
}
err = r.JSONRequest(ctx, "GET", query, nil, &resObj)
return
}
// Update performs PATCH request for DeviceManagementTemplate
func (r *DeviceManagementTemplateRequest) Update(ctx context.Context, reqObj *DeviceManagementTemplate) error {
return r.JSONRequest(ctx, "PATCH", "", reqObj, nil)
}
// Delete performs DELETE request for DeviceManagementTemplate
func (r *DeviceManagementTemplateRequest) Delete(ctx context.Context) error {
return r.JSONRequest(ctx, "DELETE", "", nil, nil)
}
// Categories returns request builder for DeviceManagementTemplateSettingCategory collection
func (b *DeviceManagementTemplateRequestBuilder) Categories() *DeviceManagementTemplateCategoriesCollectionRequestBuilder {
bb := &DeviceManagementTemplateCategoriesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
bb.baseURL += "/categories"
return bb
}
// DeviceManagementTemplateCategoriesCollectionRequestBuilder is request builder for DeviceManagementTemplateSettingCategory collection
type DeviceManagementTemplateCategoriesCollectionRequestBuilder struct{ BaseRequestBuilder }
// Request returns request for DeviceManagementTemplateSettingCategory collection
func (b *DeviceManagementTemplateCategoriesCollectionRequestBuilder) Request() *DeviceManagementTemplateCategoriesCollectionRequest {
return &DeviceManagementTemplateCategoriesCollectionRequest{
BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
}
}
// ID returns request builder for DeviceManagementTemplateSettingCategory item
func (b *DeviceManagementTemplateCategoriesCollectionRequestBuilder) ID(id string) *DeviceManagementTemplateSettingCategoryRequestBuilder {
bb := &DeviceManagementTemplateSettingCategoryRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
bb.baseURL += "/" + id
return bb
}
// DeviceManagementTemplateCategoriesCollectionRequest is request for DeviceManagementTemplateSettingCategory collection
type DeviceManagementTemplateCategoriesCollectionRequest struct{ BaseRequest }
// Paging perfoms paging operation for DeviceManagementTemplateSettingCategory collection
func (r *DeviceManagementTemplateCategoriesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}) ([]DeviceManagementTemplateSettingCategory, error) {
req, err := r.NewJSONRequest(method, path, obj)
if err != nil {
return nil, err
}
if ctx != nil {
req = req.WithContext(ctx)
}
res, err := r.client.Do(req)
if err != nil {
return nil, err
}
var values []DeviceManagementTemplateSettingCategory
for {
defer res.Body.Close()
if res.StatusCode != http.StatusOK {
b, _ := ioutil.ReadAll(res.Body)
errRes := &ErrorResponse{Response: res}
err := jsonx.Unmarshal(b, errRes)
if err != nil {
return nil, fmt.Errorf("%s: %s", res.Status, string(b))
}
return nil, errRes
}
var (
paging Paging
value []DeviceManagementTemplateSettingCategory
)
err := jsonx.NewDecoder(res.Body).Decode(&paging)
if err != nil {
return nil, err
}
err = jsonx.Unmarshal(paging.Value, &value)
if err != nil {
return nil, err
}
values = append(values, value...)
if len(paging.NextLink) == 0 {
return values, nil
}
req, err = http.NewRequest("GET", paging.NextLink, nil)
if ctx != nil {
req = req.WithContext(ctx)
}
res, err = r.client.Do(req)
if err != nil {
return nil, err
}
}
}
// Get performs GET request for DeviceManagementTemplateSettingCategory collection
func (r *DeviceManagementTemplateCategoriesCollectionRequest) Get(ctx context.Context) ([]DeviceManagementTemplateSettingCategory, error) {
var query string
if r.query != nil {
query = "?" + r.query.Encode()
}
return r.Paging(ctx, "GET", query, nil)
}
// Add performs POST request for DeviceManagementTemplateSettingCategory collection
func (r *DeviceManagementTemplateCategoriesCollectionRequest) Add(ctx context.Context, reqObj *DeviceManagementTemplateSettingCategory) (resObj *DeviceManagementTemplateSettingCategory, err error) {
err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
return
}
// MigratableTo returns request builder for DeviceManagementTemplate collection
func (b *DeviceManagementTemplateRequestBuilder) MigratableTo() *DeviceManagementTemplateMigratableToCollectionRequestBuilder {
bb := &DeviceManagementTemplateMigratableToCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
bb.baseURL += "/migratableTo"
return bb
}
// DeviceManagementTemplateMigratableToCollectionRequestBuilder is request builder for DeviceManagementTemplate collection
type DeviceManagementTemplateMigratableToCollectionRequestBuilder struct{ BaseRequestBuilder }
// Request returns request for DeviceManagementTemplate collection
func (b *DeviceManagementTemplateMigratableToCollectionRequestBuilder) Request() *DeviceManagementTemplateMigratableToCollectionRequest {
return &DeviceManagementTemplateMigratableToCollectionRequest{
BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
}
}
// ID returns request builder for DeviceManagementTemplate item
func (b *DeviceManagementTemplateMigratableToCollectionRequestBuilder) ID(id string) *DeviceManagementTemplateRequestBuilder {
bb := &DeviceManagementTemplateRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
bb.baseURL += "/" + id
return bb
}
// DeviceManagementTemplateMigratableToCollectionRequest is request for DeviceManagementTemplate collection
type DeviceManagementTemplateMigratableToCollectionRequest struct{ BaseRequest }
// Paging perfoms paging operation for DeviceManagementTemplate collection
func (r *DeviceManagementTemplateMigratableToCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}) ([]DeviceManagementTemplate, error) {
req, err := r.NewJSONRequest(method, path, obj)
if err != nil {
return nil, err
}
if ctx != nil {
req = req.WithContext(ctx)
}
res, err := r.client.Do(req)
if err != nil {
return nil, err
}
var values []DeviceManagementTemplate
for {
defer res.Body.Close()
if res.StatusCode != http.StatusOK {
b, _ := ioutil.ReadAll(res.Body)
errRes := &ErrorResponse{Response: res}
err := jsonx.Unmarshal(b, errRes)
if err != nil {
return nil, fmt.Errorf("%s: %s", res.Status, string(b))
}
return nil, errRes
}
var (
paging Paging
value []DeviceManagementTemplate
)
err := jsonx.NewDecoder(res.Body).Decode(&paging)
if err != nil {
return nil, err
}
err = jsonx.Unmarshal(paging.Value, &value)
if err != nil {
return nil, err
}
values = append(values, value...)
if len(paging.NextLink) == 0 {
return values, nil
}
req, err = http.NewRequest("GET", paging.NextLink, nil)
if ctx != nil {
req = req.WithContext(ctx)
}
res, err = r.client.Do(req)
if err != nil {
return nil, err
}
}
}
// Get performs GET request for DeviceManagementTemplate collection
func (r *DeviceManagementTemplateMigratableToCollectionRequest) Get(ctx context.Context) ([]DeviceManagementTemplate, error) {
var query string
if r.query != nil {
query = "?" + r.query.Encode()
}
return r.Paging(ctx, "GET", query, nil)
}
// Add performs POST request for DeviceManagementTemplate collection
func (r *DeviceManagementTemplateMigratableToCollectionRequest) Add(ctx context.Context, reqObj *DeviceManagementTemplate) (resObj *DeviceManagementTemplate, err error) {
err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
return
}
// Settings returns request builder for DeviceManagementSettingInstance collection
func (b *DeviceManagementTemplateRequestBuilder) Settings() *DeviceManagementTemplateSettingsCollectionRequestBuilder {
bb := &DeviceManagementTemplateSettingsCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
bb.baseURL += "/settings"
return bb
}
// DeviceManagementTemplateSettingsCollectionRequestBuilder is request builder for DeviceManagementSettingInstance collection
type DeviceManagementTemplateSettingsCollectionRequestBuilder struct{ BaseRequestBuilder }
// Request returns request for DeviceManagementSettingInstance collection
func (b *DeviceManagementTemplateSettingsCollectionRequestBuilder) Request() *DeviceManagementTemplateSettingsCollectionRequest {
return &DeviceManagementTemplateSettingsCollectionRequest{
BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
}
}
// ID returns request builder for DeviceManagementSettingInstance item
func (b *DeviceManagementTemplateSettingsCollectionRequestBuilder) ID(id string) *DeviceManagementSettingInstanceRequestBuilder {
bb := &DeviceManagementSettingInstanceRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
bb.baseURL += "/" + id
return bb
}
// DeviceManagementTemplateSettingsCollectionRequest is request for DeviceManagementSettingInstance collection
type DeviceManagementTemplateSettingsCollectionRequest struct{ BaseRequest }
// Paging perfoms paging operation for DeviceManagementSettingInstance collection
func (r *DeviceManagementTemplateSettingsCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}) ([]DeviceManagementSettingInstance, error) {
req, err := r.NewJSONRequest(method, path, obj)
if err != nil {
return nil, err
}
if ctx != nil {
req = req.WithContext(ctx)
}
res, err := r.client.Do(req)
if err != nil {
return nil, err
}
var values []DeviceManagementSettingInstance
for {
defer res.Body.Close()
if res.StatusCode != http.StatusOK {
b, _ := ioutil.ReadAll(res.Body)
errRes := &ErrorResponse{Response: res}
err := jsonx.Unmarshal(b, errRes)
if err != nil {
return nil, fmt.Errorf("%s: %s", res.Status, string(b))
}
return nil, errRes
}
var (
paging Paging
value []DeviceManagementSettingInstance
)
err := jsonx.NewDecoder(res.Body).Decode(&paging)
if err != nil {
return nil, err
}
err = jsonx.Unmarshal(paging.Value, &value)
if err != nil {
return nil, err
}
values = append(values, value...)
if len(paging.NextLink) == 0 {
return values, nil
}
req, err = http.NewRequest("GET", paging.NextLink, nil)
if ctx != nil {
req = req.WithContext(ctx)
}
res, err = r.client.Do(req)
if err != nil {
return nil, err
}
}
}
// Get performs GET request for DeviceManagementSettingInstance collection
func (r *DeviceManagementTemplateSettingsCollectionRequest) Get(ctx context.Context) ([]DeviceManagementSettingInstance, error) {
var query string
if r.query != nil {
query = "?" + r.query.Encode()
}
return r.Paging(ctx, "GET", query, nil)
}
// Add performs POST request for DeviceManagementSettingInstance collection
func (r *DeviceManagementTemplateSettingsCollectionRequest) Add(ctx context.Context, reqObj *DeviceManagementSettingInstance) (resObj *DeviceManagementSettingInstance, err error) {
err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
return
}