github.com/yaegashi/msgraph.go@v0.1.4/v1.0/ActionManaged.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  // ManagedAppPolicyTargetAppsRequestParameter undocumented
    15  type ManagedAppPolicyTargetAppsRequestParameter struct {
    16  	// Apps undocumented
    17  	Apps []ManagedMobileApp `json:"apps,omitempty"`
    18  }
    19  
    20  // ManagedAppProtectionTargetAppsRequestParameter undocumented
    21  type ManagedAppProtectionTargetAppsRequestParameter struct {
    22  	// Apps undocumented
    23  	Apps []ManagedMobileApp `json:"apps,omitempty"`
    24  }
    25  
    26  // ManagedDeviceRetireRequestParameter undocumented
    27  type ManagedDeviceRetireRequestParameter struct {
    28  }
    29  
    30  // ManagedDeviceWipeRequestParameter undocumented
    31  type ManagedDeviceWipeRequestParameter struct {
    32  	// KeepEnrollmentData undocumented
    33  	KeepEnrollmentData *bool `json:"keepEnrollmentData,omitempty"`
    34  	// KeepUserData undocumented
    35  	KeepUserData *bool `json:"keepUserData,omitempty"`
    36  	// MacOsUnlockCode undocumented
    37  	MacOsUnlockCode *string `json:"macOsUnlockCode,omitempty"`
    38  }
    39  
    40  // ManagedDeviceResetPasscodeRequestParameter undocumented
    41  type ManagedDeviceResetPasscodeRequestParameter struct {
    42  }
    43  
    44  // ManagedDeviceRemoteLockRequestParameter undocumented
    45  type ManagedDeviceRemoteLockRequestParameter struct {
    46  }
    47  
    48  // ManagedDeviceRequestRemoteAssistanceRequestParameter undocumented
    49  type ManagedDeviceRequestRemoteAssistanceRequestParameter struct {
    50  }
    51  
    52  // ManagedDeviceDisableLostModeRequestParameter undocumented
    53  type ManagedDeviceDisableLostModeRequestParameter struct {
    54  }
    55  
    56  // ManagedDeviceLocateDeviceRequestParameter undocumented
    57  type ManagedDeviceLocateDeviceRequestParameter struct {
    58  }
    59  
    60  // ManagedDeviceBypassActivationLockRequestParameter undocumented
    61  type ManagedDeviceBypassActivationLockRequestParameter struct {
    62  }
    63  
    64  // ManagedDeviceRebootNowRequestParameter undocumented
    65  type ManagedDeviceRebootNowRequestParameter struct {
    66  }
    67  
    68  // ManagedDeviceShutDownRequestParameter undocumented
    69  type ManagedDeviceShutDownRequestParameter struct {
    70  }
    71  
    72  // ManagedDeviceRecoverPasscodeRequestParameter undocumented
    73  type ManagedDeviceRecoverPasscodeRequestParameter struct {
    74  }
    75  
    76  // ManagedDeviceCleanWindowsDeviceRequestParameter undocumented
    77  type ManagedDeviceCleanWindowsDeviceRequestParameter struct {
    78  	// KeepUserData undocumented
    79  	KeepUserData *bool `json:"keepUserData,omitempty"`
    80  }
    81  
    82  // ManagedDeviceLogoutSharedAppleDeviceActiveUserRequestParameter undocumented
    83  type ManagedDeviceLogoutSharedAppleDeviceActiveUserRequestParameter struct {
    84  }
    85  
    86  // ManagedDeviceDeleteUserFromSharedAppleDeviceRequestParameter undocumented
    87  type ManagedDeviceDeleteUserFromSharedAppleDeviceRequestParameter struct {
    88  	// UserPrincipalName undocumented
    89  	UserPrincipalName *string `json:"userPrincipalName,omitempty"`
    90  }
    91  
    92  // ManagedDeviceSyncDeviceRequestParameter undocumented
    93  type ManagedDeviceSyncDeviceRequestParameter struct {
    94  }
    95  
    96  // ManagedDeviceWindowsDefenderScanRequestParameter undocumented
    97  type ManagedDeviceWindowsDefenderScanRequestParameter struct {
    98  	// QuickScan undocumented
    99  	QuickScan *bool `json:"quickScan,omitempty"`
   100  }
   101  
   102  // ManagedDeviceWindowsDefenderUpdateSignaturesRequestParameter undocumented
   103  type ManagedDeviceWindowsDefenderUpdateSignaturesRequestParameter struct {
   104  }
   105  
   106  // ManagedDeviceUpdateWindowsDeviceAccountRequestParameter undocumented
   107  type ManagedDeviceUpdateWindowsDeviceAccountRequestParameter struct {
   108  	// UpdateWindowsDeviceAccountActionParameter undocumented
   109  	UpdateWindowsDeviceAccountActionParameter *UpdateWindowsDeviceAccountActionParameter `json:"updateWindowsDeviceAccountActionParameter,omitempty"`
   110  }
   111  
   112  // ManagedDeviceMobileAppConfigurationAssignRequestParameter undocumented
   113  type ManagedDeviceMobileAppConfigurationAssignRequestParameter struct {
   114  	// Assignments undocumented
   115  	Assignments []ManagedDeviceMobileAppConfigurationAssignment `json:"assignments,omitempty"`
   116  }
   117  
   118  // ManagedEBookAssignRequestParameter undocumented
   119  type ManagedEBookAssignRequestParameter struct {
   120  	// ManagedEBookAssignments undocumented
   121  	ManagedEBookAssignments []ManagedEBookAssignment `json:"managedEBookAssignments,omitempty"`
   122  }
   123  
   124  // AppliedPolicies returns request builder for ManagedAppPolicy collection
   125  func (b *ManagedAppRegistrationRequestBuilder) AppliedPolicies() *ManagedAppRegistrationAppliedPoliciesCollectionRequestBuilder {
   126  	bb := &ManagedAppRegistrationAppliedPoliciesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   127  	bb.baseURL += "/appliedPolicies"
   128  	return bb
   129  }
   130  
   131  // ManagedAppRegistrationAppliedPoliciesCollectionRequestBuilder is request builder for ManagedAppPolicy collection
   132  type ManagedAppRegistrationAppliedPoliciesCollectionRequestBuilder struct{ BaseRequestBuilder }
   133  
   134  // Request returns request for ManagedAppPolicy collection
   135  func (b *ManagedAppRegistrationAppliedPoliciesCollectionRequestBuilder) Request() *ManagedAppRegistrationAppliedPoliciesCollectionRequest {
   136  	return &ManagedAppRegistrationAppliedPoliciesCollectionRequest{
   137  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
   138  	}
   139  }
   140  
   141  // ID returns request builder for ManagedAppPolicy item
   142  func (b *ManagedAppRegistrationAppliedPoliciesCollectionRequestBuilder) ID(id string) *ManagedAppPolicyRequestBuilder {
   143  	bb := &ManagedAppPolicyRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   144  	bb.baseURL += "/" + id
   145  	return bb
   146  }
   147  
   148  // ManagedAppRegistrationAppliedPoliciesCollectionRequest is request for ManagedAppPolicy collection
   149  type ManagedAppRegistrationAppliedPoliciesCollectionRequest struct{ BaseRequest }
   150  
   151  // Paging perfoms paging operation for ManagedAppPolicy collection
   152  func (r *ManagedAppRegistrationAppliedPoliciesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]ManagedAppPolicy, error) {
   153  	req, err := r.NewJSONRequest(method, path, obj)
   154  	if err != nil {
   155  		return nil, err
   156  	}
   157  	if ctx != nil {
   158  		req = req.WithContext(ctx)
   159  	}
   160  	res, err := r.client.Do(req)
   161  	if err != nil {
   162  		return nil, err
   163  	}
   164  	var values []ManagedAppPolicy
   165  	for {
   166  		if res.StatusCode != http.StatusOK {
   167  			b, _ := ioutil.ReadAll(res.Body)
   168  			res.Body.Close()
   169  			errRes := &ErrorResponse{Response: res}
   170  			err := jsonx.Unmarshal(b, errRes)
   171  			if err != nil {
   172  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
   173  			}
   174  			return nil, errRes
   175  		}
   176  		var (
   177  			paging Paging
   178  			value  []ManagedAppPolicy
   179  		)
   180  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
   181  		res.Body.Close()
   182  		if err != nil {
   183  			return nil, err
   184  		}
   185  		err = jsonx.Unmarshal(paging.Value, &value)
   186  		if err != nil {
   187  			return nil, err
   188  		}
   189  		values = append(values, value...)
   190  		if n >= 0 {
   191  			n--
   192  		}
   193  		if n == 0 || len(paging.NextLink) == 0 {
   194  			return values, nil
   195  		}
   196  		req, err = http.NewRequest("GET", paging.NextLink, nil)
   197  		if ctx != nil {
   198  			req = req.WithContext(ctx)
   199  		}
   200  		res, err = r.client.Do(req)
   201  		if err != nil {
   202  			return nil, err
   203  		}
   204  	}
   205  }
   206  
   207  // GetN performs GET request for ManagedAppPolicy collection, max N pages
   208  func (r *ManagedAppRegistrationAppliedPoliciesCollectionRequest) GetN(ctx context.Context, n int) ([]ManagedAppPolicy, error) {
   209  	var query string
   210  	if r.query != nil {
   211  		query = "?" + r.query.Encode()
   212  	}
   213  	return r.Paging(ctx, "GET", query, nil, n)
   214  }
   215  
   216  // Get performs GET request for ManagedAppPolicy collection
   217  func (r *ManagedAppRegistrationAppliedPoliciesCollectionRequest) Get(ctx context.Context) ([]ManagedAppPolicy, error) {
   218  	return r.GetN(ctx, 0)
   219  }
   220  
   221  // Add performs POST request for ManagedAppPolicy collection
   222  func (r *ManagedAppRegistrationAppliedPoliciesCollectionRequest) Add(ctx context.Context, reqObj *ManagedAppPolicy) (resObj *ManagedAppPolicy, err error) {
   223  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
   224  	return
   225  }
   226  
   227  // IntendedPolicies returns request builder for ManagedAppPolicy collection
   228  func (b *ManagedAppRegistrationRequestBuilder) IntendedPolicies() *ManagedAppRegistrationIntendedPoliciesCollectionRequestBuilder {
   229  	bb := &ManagedAppRegistrationIntendedPoliciesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   230  	bb.baseURL += "/intendedPolicies"
   231  	return bb
   232  }
   233  
   234  // ManagedAppRegistrationIntendedPoliciesCollectionRequestBuilder is request builder for ManagedAppPolicy collection
   235  type ManagedAppRegistrationIntendedPoliciesCollectionRequestBuilder struct{ BaseRequestBuilder }
   236  
   237  // Request returns request for ManagedAppPolicy collection
   238  func (b *ManagedAppRegistrationIntendedPoliciesCollectionRequestBuilder) Request() *ManagedAppRegistrationIntendedPoliciesCollectionRequest {
   239  	return &ManagedAppRegistrationIntendedPoliciesCollectionRequest{
   240  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
   241  	}
   242  }
   243  
   244  // ID returns request builder for ManagedAppPolicy item
   245  func (b *ManagedAppRegistrationIntendedPoliciesCollectionRequestBuilder) ID(id string) *ManagedAppPolicyRequestBuilder {
   246  	bb := &ManagedAppPolicyRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   247  	bb.baseURL += "/" + id
   248  	return bb
   249  }
   250  
   251  // ManagedAppRegistrationIntendedPoliciesCollectionRequest is request for ManagedAppPolicy collection
   252  type ManagedAppRegistrationIntendedPoliciesCollectionRequest struct{ BaseRequest }
   253  
   254  // Paging perfoms paging operation for ManagedAppPolicy collection
   255  func (r *ManagedAppRegistrationIntendedPoliciesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]ManagedAppPolicy, error) {
   256  	req, err := r.NewJSONRequest(method, path, obj)
   257  	if err != nil {
   258  		return nil, err
   259  	}
   260  	if ctx != nil {
   261  		req = req.WithContext(ctx)
   262  	}
   263  	res, err := r.client.Do(req)
   264  	if err != nil {
   265  		return nil, err
   266  	}
   267  	var values []ManagedAppPolicy
   268  	for {
   269  		if res.StatusCode != http.StatusOK {
   270  			b, _ := ioutil.ReadAll(res.Body)
   271  			res.Body.Close()
   272  			errRes := &ErrorResponse{Response: res}
   273  			err := jsonx.Unmarshal(b, errRes)
   274  			if err != nil {
   275  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
   276  			}
   277  			return nil, errRes
   278  		}
   279  		var (
   280  			paging Paging
   281  			value  []ManagedAppPolicy
   282  		)
   283  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
   284  		res.Body.Close()
   285  		if err != nil {
   286  			return nil, err
   287  		}
   288  		err = jsonx.Unmarshal(paging.Value, &value)
   289  		if err != nil {
   290  			return nil, err
   291  		}
   292  		values = append(values, value...)
   293  		if n >= 0 {
   294  			n--
   295  		}
   296  		if n == 0 || len(paging.NextLink) == 0 {
   297  			return values, nil
   298  		}
   299  		req, err = http.NewRequest("GET", paging.NextLink, nil)
   300  		if ctx != nil {
   301  			req = req.WithContext(ctx)
   302  		}
   303  		res, err = r.client.Do(req)
   304  		if err != nil {
   305  			return nil, err
   306  		}
   307  	}
   308  }
   309  
   310  // GetN performs GET request for ManagedAppPolicy collection, max N pages
   311  func (r *ManagedAppRegistrationIntendedPoliciesCollectionRequest) GetN(ctx context.Context, n int) ([]ManagedAppPolicy, error) {
   312  	var query string
   313  	if r.query != nil {
   314  		query = "?" + r.query.Encode()
   315  	}
   316  	return r.Paging(ctx, "GET", query, nil, n)
   317  }
   318  
   319  // Get performs GET request for ManagedAppPolicy collection
   320  func (r *ManagedAppRegistrationIntendedPoliciesCollectionRequest) Get(ctx context.Context) ([]ManagedAppPolicy, error) {
   321  	return r.GetN(ctx, 0)
   322  }
   323  
   324  // Add performs POST request for ManagedAppPolicy collection
   325  func (r *ManagedAppRegistrationIntendedPoliciesCollectionRequest) Add(ctx context.Context, reqObj *ManagedAppPolicy) (resObj *ManagedAppPolicy, err error) {
   326  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
   327  	return
   328  }
   329  
   330  // Operations returns request builder for ManagedAppOperation collection
   331  func (b *ManagedAppRegistrationRequestBuilder) Operations() *ManagedAppRegistrationOperationsCollectionRequestBuilder {
   332  	bb := &ManagedAppRegistrationOperationsCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   333  	bb.baseURL += "/operations"
   334  	return bb
   335  }
   336  
   337  // ManagedAppRegistrationOperationsCollectionRequestBuilder is request builder for ManagedAppOperation collection
   338  type ManagedAppRegistrationOperationsCollectionRequestBuilder struct{ BaseRequestBuilder }
   339  
   340  // Request returns request for ManagedAppOperation collection
   341  func (b *ManagedAppRegistrationOperationsCollectionRequestBuilder) Request() *ManagedAppRegistrationOperationsCollectionRequest {
   342  	return &ManagedAppRegistrationOperationsCollectionRequest{
   343  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
   344  	}
   345  }
   346  
   347  // ID returns request builder for ManagedAppOperation item
   348  func (b *ManagedAppRegistrationOperationsCollectionRequestBuilder) ID(id string) *ManagedAppOperationRequestBuilder {
   349  	bb := &ManagedAppOperationRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   350  	bb.baseURL += "/" + id
   351  	return bb
   352  }
   353  
   354  // ManagedAppRegistrationOperationsCollectionRequest is request for ManagedAppOperation collection
   355  type ManagedAppRegistrationOperationsCollectionRequest struct{ BaseRequest }
   356  
   357  // Paging perfoms paging operation for ManagedAppOperation collection
   358  func (r *ManagedAppRegistrationOperationsCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]ManagedAppOperation, error) {
   359  	req, err := r.NewJSONRequest(method, path, obj)
   360  	if err != nil {
   361  		return nil, err
   362  	}
   363  	if ctx != nil {
   364  		req = req.WithContext(ctx)
   365  	}
   366  	res, err := r.client.Do(req)
   367  	if err != nil {
   368  		return nil, err
   369  	}
   370  	var values []ManagedAppOperation
   371  	for {
   372  		if res.StatusCode != http.StatusOK {
   373  			b, _ := ioutil.ReadAll(res.Body)
   374  			res.Body.Close()
   375  			errRes := &ErrorResponse{Response: res}
   376  			err := jsonx.Unmarshal(b, errRes)
   377  			if err != nil {
   378  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
   379  			}
   380  			return nil, errRes
   381  		}
   382  		var (
   383  			paging Paging
   384  			value  []ManagedAppOperation
   385  		)
   386  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
   387  		res.Body.Close()
   388  		if err != nil {
   389  			return nil, err
   390  		}
   391  		err = jsonx.Unmarshal(paging.Value, &value)
   392  		if err != nil {
   393  			return nil, err
   394  		}
   395  		values = append(values, value...)
   396  		if n >= 0 {
   397  			n--
   398  		}
   399  		if n == 0 || len(paging.NextLink) == 0 {
   400  			return values, nil
   401  		}
   402  		req, err = http.NewRequest("GET", paging.NextLink, nil)
   403  		if ctx != nil {
   404  			req = req.WithContext(ctx)
   405  		}
   406  		res, err = r.client.Do(req)
   407  		if err != nil {
   408  			return nil, err
   409  		}
   410  	}
   411  }
   412  
   413  // GetN performs GET request for ManagedAppOperation collection, max N pages
   414  func (r *ManagedAppRegistrationOperationsCollectionRequest) GetN(ctx context.Context, n int) ([]ManagedAppOperation, error) {
   415  	var query string
   416  	if r.query != nil {
   417  		query = "?" + r.query.Encode()
   418  	}
   419  	return r.Paging(ctx, "GET", query, nil, n)
   420  }
   421  
   422  // Get performs GET request for ManagedAppOperation collection
   423  func (r *ManagedAppRegistrationOperationsCollectionRequest) Get(ctx context.Context) ([]ManagedAppOperation, error) {
   424  	return r.GetN(ctx, 0)
   425  }
   426  
   427  // Add performs POST request for ManagedAppOperation collection
   428  func (r *ManagedAppRegistrationOperationsCollectionRequest) Add(ctx context.Context, reqObj *ManagedAppOperation) (resObj *ManagedAppOperation, err error) {
   429  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
   430  	return
   431  }
   432  
   433  // DeviceCategory is navigation property
   434  func (b *ManagedDeviceRequestBuilder) DeviceCategory() *DeviceCategoryRequestBuilder {
   435  	bb := &DeviceCategoryRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   436  	bb.baseURL += "/deviceCategory"
   437  	return bb
   438  }
   439  
   440  // DeviceCompliancePolicyStates returns request builder for DeviceCompliancePolicyState collection
   441  func (b *ManagedDeviceRequestBuilder) DeviceCompliancePolicyStates() *ManagedDeviceDeviceCompliancePolicyStatesCollectionRequestBuilder {
   442  	bb := &ManagedDeviceDeviceCompliancePolicyStatesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   443  	bb.baseURL += "/deviceCompliancePolicyStates"
   444  	return bb
   445  }
   446  
   447  // ManagedDeviceDeviceCompliancePolicyStatesCollectionRequestBuilder is request builder for DeviceCompliancePolicyState collection
   448  type ManagedDeviceDeviceCompliancePolicyStatesCollectionRequestBuilder struct{ BaseRequestBuilder }
   449  
   450  // Request returns request for DeviceCompliancePolicyState collection
   451  func (b *ManagedDeviceDeviceCompliancePolicyStatesCollectionRequestBuilder) Request() *ManagedDeviceDeviceCompliancePolicyStatesCollectionRequest {
   452  	return &ManagedDeviceDeviceCompliancePolicyStatesCollectionRequest{
   453  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
   454  	}
   455  }
   456  
   457  // ID returns request builder for DeviceCompliancePolicyState item
   458  func (b *ManagedDeviceDeviceCompliancePolicyStatesCollectionRequestBuilder) ID(id string) *DeviceCompliancePolicyStateRequestBuilder {
   459  	bb := &DeviceCompliancePolicyStateRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   460  	bb.baseURL += "/" + id
   461  	return bb
   462  }
   463  
   464  // ManagedDeviceDeviceCompliancePolicyStatesCollectionRequest is request for DeviceCompliancePolicyState collection
   465  type ManagedDeviceDeviceCompliancePolicyStatesCollectionRequest struct{ BaseRequest }
   466  
   467  // Paging perfoms paging operation for DeviceCompliancePolicyState collection
   468  func (r *ManagedDeviceDeviceCompliancePolicyStatesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]DeviceCompliancePolicyState, error) {
   469  	req, err := r.NewJSONRequest(method, path, obj)
   470  	if err != nil {
   471  		return nil, err
   472  	}
   473  	if ctx != nil {
   474  		req = req.WithContext(ctx)
   475  	}
   476  	res, err := r.client.Do(req)
   477  	if err != nil {
   478  		return nil, err
   479  	}
   480  	var values []DeviceCompliancePolicyState
   481  	for {
   482  		if res.StatusCode != http.StatusOK {
   483  			b, _ := ioutil.ReadAll(res.Body)
   484  			res.Body.Close()
   485  			errRes := &ErrorResponse{Response: res}
   486  			err := jsonx.Unmarshal(b, errRes)
   487  			if err != nil {
   488  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
   489  			}
   490  			return nil, errRes
   491  		}
   492  		var (
   493  			paging Paging
   494  			value  []DeviceCompliancePolicyState
   495  		)
   496  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
   497  		res.Body.Close()
   498  		if err != nil {
   499  			return nil, err
   500  		}
   501  		err = jsonx.Unmarshal(paging.Value, &value)
   502  		if err != nil {
   503  			return nil, err
   504  		}
   505  		values = append(values, value...)
   506  		if n >= 0 {
   507  			n--
   508  		}
   509  		if n == 0 || len(paging.NextLink) == 0 {
   510  			return values, nil
   511  		}
   512  		req, err = http.NewRequest("GET", paging.NextLink, nil)
   513  		if ctx != nil {
   514  			req = req.WithContext(ctx)
   515  		}
   516  		res, err = r.client.Do(req)
   517  		if err != nil {
   518  			return nil, err
   519  		}
   520  	}
   521  }
   522  
   523  // GetN performs GET request for DeviceCompliancePolicyState collection, max N pages
   524  func (r *ManagedDeviceDeviceCompliancePolicyStatesCollectionRequest) GetN(ctx context.Context, n int) ([]DeviceCompliancePolicyState, error) {
   525  	var query string
   526  	if r.query != nil {
   527  		query = "?" + r.query.Encode()
   528  	}
   529  	return r.Paging(ctx, "GET", query, nil, n)
   530  }
   531  
   532  // Get performs GET request for DeviceCompliancePolicyState collection
   533  func (r *ManagedDeviceDeviceCompliancePolicyStatesCollectionRequest) Get(ctx context.Context) ([]DeviceCompliancePolicyState, error) {
   534  	return r.GetN(ctx, 0)
   535  }
   536  
   537  // Add performs POST request for DeviceCompliancePolicyState collection
   538  func (r *ManagedDeviceDeviceCompliancePolicyStatesCollectionRequest) Add(ctx context.Context, reqObj *DeviceCompliancePolicyState) (resObj *DeviceCompliancePolicyState, err error) {
   539  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
   540  	return
   541  }
   542  
   543  // DeviceConfigurationStates returns request builder for DeviceConfigurationState collection
   544  func (b *ManagedDeviceRequestBuilder) DeviceConfigurationStates() *ManagedDeviceDeviceConfigurationStatesCollectionRequestBuilder {
   545  	bb := &ManagedDeviceDeviceConfigurationStatesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   546  	bb.baseURL += "/deviceConfigurationStates"
   547  	return bb
   548  }
   549  
   550  // ManagedDeviceDeviceConfigurationStatesCollectionRequestBuilder is request builder for DeviceConfigurationState collection
   551  type ManagedDeviceDeviceConfigurationStatesCollectionRequestBuilder struct{ BaseRequestBuilder }
   552  
   553  // Request returns request for DeviceConfigurationState collection
   554  func (b *ManagedDeviceDeviceConfigurationStatesCollectionRequestBuilder) Request() *ManagedDeviceDeviceConfigurationStatesCollectionRequest {
   555  	return &ManagedDeviceDeviceConfigurationStatesCollectionRequest{
   556  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
   557  	}
   558  }
   559  
   560  // ID returns request builder for DeviceConfigurationState item
   561  func (b *ManagedDeviceDeviceConfigurationStatesCollectionRequestBuilder) ID(id string) *DeviceConfigurationStateRequestBuilder {
   562  	bb := &DeviceConfigurationStateRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   563  	bb.baseURL += "/" + id
   564  	return bb
   565  }
   566  
   567  // ManagedDeviceDeviceConfigurationStatesCollectionRequest is request for DeviceConfigurationState collection
   568  type ManagedDeviceDeviceConfigurationStatesCollectionRequest struct{ BaseRequest }
   569  
   570  // Paging perfoms paging operation for DeviceConfigurationState collection
   571  func (r *ManagedDeviceDeviceConfigurationStatesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]DeviceConfigurationState, error) {
   572  	req, err := r.NewJSONRequest(method, path, obj)
   573  	if err != nil {
   574  		return nil, err
   575  	}
   576  	if ctx != nil {
   577  		req = req.WithContext(ctx)
   578  	}
   579  	res, err := r.client.Do(req)
   580  	if err != nil {
   581  		return nil, err
   582  	}
   583  	var values []DeviceConfigurationState
   584  	for {
   585  		if res.StatusCode != http.StatusOK {
   586  			b, _ := ioutil.ReadAll(res.Body)
   587  			res.Body.Close()
   588  			errRes := &ErrorResponse{Response: res}
   589  			err := jsonx.Unmarshal(b, errRes)
   590  			if err != nil {
   591  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
   592  			}
   593  			return nil, errRes
   594  		}
   595  		var (
   596  			paging Paging
   597  			value  []DeviceConfigurationState
   598  		)
   599  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
   600  		res.Body.Close()
   601  		if err != nil {
   602  			return nil, err
   603  		}
   604  		err = jsonx.Unmarshal(paging.Value, &value)
   605  		if err != nil {
   606  			return nil, err
   607  		}
   608  		values = append(values, value...)
   609  		if n >= 0 {
   610  			n--
   611  		}
   612  		if n == 0 || len(paging.NextLink) == 0 {
   613  			return values, nil
   614  		}
   615  		req, err = http.NewRequest("GET", paging.NextLink, nil)
   616  		if ctx != nil {
   617  			req = req.WithContext(ctx)
   618  		}
   619  		res, err = r.client.Do(req)
   620  		if err != nil {
   621  			return nil, err
   622  		}
   623  	}
   624  }
   625  
   626  // GetN performs GET request for DeviceConfigurationState collection, max N pages
   627  func (r *ManagedDeviceDeviceConfigurationStatesCollectionRequest) GetN(ctx context.Context, n int) ([]DeviceConfigurationState, error) {
   628  	var query string
   629  	if r.query != nil {
   630  		query = "?" + r.query.Encode()
   631  	}
   632  	return r.Paging(ctx, "GET", query, nil, n)
   633  }
   634  
   635  // Get performs GET request for DeviceConfigurationState collection
   636  func (r *ManagedDeviceDeviceConfigurationStatesCollectionRequest) Get(ctx context.Context) ([]DeviceConfigurationState, error) {
   637  	return r.GetN(ctx, 0)
   638  }
   639  
   640  // Add performs POST request for DeviceConfigurationState collection
   641  func (r *ManagedDeviceDeviceConfigurationStatesCollectionRequest) Add(ctx context.Context, reqObj *DeviceConfigurationState) (resObj *DeviceConfigurationState, err error) {
   642  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
   643  	return
   644  }
   645  
   646  // Assignments returns request builder for ManagedDeviceMobileAppConfigurationAssignment collection
   647  func (b *ManagedDeviceMobileAppConfigurationRequestBuilder) Assignments() *ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequestBuilder {
   648  	bb := &ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   649  	bb.baseURL += "/assignments"
   650  	return bb
   651  }
   652  
   653  // ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequestBuilder is request builder for ManagedDeviceMobileAppConfigurationAssignment collection
   654  type ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequestBuilder struct{ BaseRequestBuilder }
   655  
   656  // Request returns request for ManagedDeviceMobileAppConfigurationAssignment collection
   657  func (b *ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequestBuilder) Request() *ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequest {
   658  	return &ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequest{
   659  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
   660  	}
   661  }
   662  
   663  // ID returns request builder for ManagedDeviceMobileAppConfigurationAssignment item
   664  func (b *ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequestBuilder) ID(id string) *ManagedDeviceMobileAppConfigurationAssignmentRequestBuilder {
   665  	bb := &ManagedDeviceMobileAppConfigurationAssignmentRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   666  	bb.baseURL += "/" + id
   667  	return bb
   668  }
   669  
   670  // ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequest is request for ManagedDeviceMobileAppConfigurationAssignment collection
   671  type ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequest struct{ BaseRequest }
   672  
   673  // Paging perfoms paging operation for ManagedDeviceMobileAppConfigurationAssignment collection
   674  func (r *ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]ManagedDeviceMobileAppConfigurationAssignment, error) {
   675  	req, err := r.NewJSONRequest(method, path, obj)
   676  	if err != nil {
   677  		return nil, err
   678  	}
   679  	if ctx != nil {
   680  		req = req.WithContext(ctx)
   681  	}
   682  	res, err := r.client.Do(req)
   683  	if err != nil {
   684  		return nil, err
   685  	}
   686  	var values []ManagedDeviceMobileAppConfigurationAssignment
   687  	for {
   688  		if res.StatusCode != http.StatusOK {
   689  			b, _ := ioutil.ReadAll(res.Body)
   690  			res.Body.Close()
   691  			errRes := &ErrorResponse{Response: res}
   692  			err := jsonx.Unmarshal(b, errRes)
   693  			if err != nil {
   694  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
   695  			}
   696  			return nil, errRes
   697  		}
   698  		var (
   699  			paging Paging
   700  			value  []ManagedDeviceMobileAppConfigurationAssignment
   701  		)
   702  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
   703  		res.Body.Close()
   704  		if err != nil {
   705  			return nil, err
   706  		}
   707  		err = jsonx.Unmarshal(paging.Value, &value)
   708  		if err != nil {
   709  			return nil, err
   710  		}
   711  		values = append(values, value...)
   712  		if n >= 0 {
   713  			n--
   714  		}
   715  		if n == 0 || len(paging.NextLink) == 0 {
   716  			return values, nil
   717  		}
   718  		req, err = http.NewRequest("GET", paging.NextLink, nil)
   719  		if ctx != nil {
   720  			req = req.WithContext(ctx)
   721  		}
   722  		res, err = r.client.Do(req)
   723  		if err != nil {
   724  			return nil, err
   725  		}
   726  	}
   727  }
   728  
   729  // GetN performs GET request for ManagedDeviceMobileAppConfigurationAssignment collection, max N pages
   730  func (r *ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequest) GetN(ctx context.Context, n int) ([]ManagedDeviceMobileAppConfigurationAssignment, error) {
   731  	var query string
   732  	if r.query != nil {
   733  		query = "?" + r.query.Encode()
   734  	}
   735  	return r.Paging(ctx, "GET", query, nil, n)
   736  }
   737  
   738  // Get performs GET request for ManagedDeviceMobileAppConfigurationAssignment collection
   739  func (r *ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequest) Get(ctx context.Context) ([]ManagedDeviceMobileAppConfigurationAssignment, error) {
   740  	return r.GetN(ctx, 0)
   741  }
   742  
   743  // Add performs POST request for ManagedDeviceMobileAppConfigurationAssignment collection
   744  func (r *ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequest) Add(ctx context.Context, reqObj *ManagedDeviceMobileAppConfigurationAssignment) (resObj *ManagedDeviceMobileAppConfigurationAssignment, err error) {
   745  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
   746  	return
   747  }
   748  
   749  // DeviceStatusSummary is navigation property
   750  func (b *ManagedDeviceMobileAppConfigurationRequestBuilder) DeviceStatusSummary() *ManagedDeviceMobileAppConfigurationDeviceSummaryRequestBuilder {
   751  	bb := &ManagedDeviceMobileAppConfigurationDeviceSummaryRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   752  	bb.baseURL += "/deviceStatusSummary"
   753  	return bb
   754  }
   755  
   756  // DeviceStatuses returns request builder for ManagedDeviceMobileAppConfigurationDeviceStatus collection
   757  func (b *ManagedDeviceMobileAppConfigurationRequestBuilder) DeviceStatuses() *ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequestBuilder {
   758  	bb := &ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   759  	bb.baseURL += "/deviceStatuses"
   760  	return bb
   761  }
   762  
   763  // ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequestBuilder is request builder for ManagedDeviceMobileAppConfigurationDeviceStatus collection
   764  type ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequestBuilder struct{ BaseRequestBuilder }
   765  
   766  // Request returns request for ManagedDeviceMobileAppConfigurationDeviceStatus collection
   767  func (b *ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequestBuilder) Request() *ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequest {
   768  	return &ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequest{
   769  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
   770  	}
   771  }
   772  
   773  // ID returns request builder for ManagedDeviceMobileAppConfigurationDeviceStatus item
   774  func (b *ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequestBuilder) ID(id string) *ManagedDeviceMobileAppConfigurationDeviceStatusRequestBuilder {
   775  	bb := &ManagedDeviceMobileAppConfigurationDeviceStatusRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   776  	bb.baseURL += "/" + id
   777  	return bb
   778  }
   779  
   780  // ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequest is request for ManagedDeviceMobileAppConfigurationDeviceStatus collection
   781  type ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequest struct{ BaseRequest }
   782  
   783  // Paging perfoms paging operation for ManagedDeviceMobileAppConfigurationDeviceStatus collection
   784  func (r *ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]ManagedDeviceMobileAppConfigurationDeviceStatus, error) {
   785  	req, err := r.NewJSONRequest(method, path, obj)
   786  	if err != nil {
   787  		return nil, err
   788  	}
   789  	if ctx != nil {
   790  		req = req.WithContext(ctx)
   791  	}
   792  	res, err := r.client.Do(req)
   793  	if err != nil {
   794  		return nil, err
   795  	}
   796  	var values []ManagedDeviceMobileAppConfigurationDeviceStatus
   797  	for {
   798  		if res.StatusCode != http.StatusOK {
   799  			b, _ := ioutil.ReadAll(res.Body)
   800  			res.Body.Close()
   801  			errRes := &ErrorResponse{Response: res}
   802  			err := jsonx.Unmarshal(b, errRes)
   803  			if err != nil {
   804  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
   805  			}
   806  			return nil, errRes
   807  		}
   808  		var (
   809  			paging Paging
   810  			value  []ManagedDeviceMobileAppConfigurationDeviceStatus
   811  		)
   812  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
   813  		res.Body.Close()
   814  		if err != nil {
   815  			return nil, err
   816  		}
   817  		err = jsonx.Unmarshal(paging.Value, &value)
   818  		if err != nil {
   819  			return nil, err
   820  		}
   821  		values = append(values, value...)
   822  		if n >= 0 {
   823  			n--
   824  		}
   825  		if n == 0 || len(paging.NextLink) == 0 {
   826  			return values, nil
   827  		}
   828  		req, err = http.NewRequest("GET", paging.NextLink, nil)
   829  		if ctx != nil {
   830  			req = req.WithContext(ctx)
   831  		}
   832  		res, err = r.client.Do(req)
   833  		if err != nil {
   834  			return nil, err
   835  		}
   836  	}
   837  }
   838  
   839  // GetN performs GET request for ManagedDeviceMobileAppConfigurationDeviceStatus collection, max N pages
   840  func (r *ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequest) GetN(ctx context.Context, n int) ([]ManagedDeviceMobileAppConfigurationDeviceStatus, error) {
   841  	var query string
   842  	if r.query != nil {
   843  		query = "?" + r.query.Encode()
   844  	}
   845  	return r.Paging(ctx, "GET", query, nil, n)
   846  }
   847  
   848  // Get performs GET request for ManagedDeviceMobileAppConfigurationDeviceStatus collection
   849  func (r *ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequest) Get(ctx context.Context) ([]ManagedDeviceMobileAppConfigurationDeviceStatus, error) {
   850  	return r.GetN(ctx, 0)
   851  }
   852  
   853  // Add performs POST request for ManagedDeviceMobileAppConfigurationDeviceStatus collection
   854  func (r *ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequest) Add(ctx context.Context, reqObj *ManagedDeviceMobileAppConfigurationDeviceStatus) (resObj *ManagedDeviceMobileAppConfigurationDeviceStatus, err error) {
   855  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
   856  	return
   857  }
   858  
   859  // UserStatusSummary is navigation property
   860  func (b *ManagedDeviceMobileAppConfigurationRequestBuilder) UserStatusSummary() *ManagedDeviceMobileAppConfigurationUserSummaryRequestBuilder {
   861  	bb := &ManagedDeviceMobileAppConfigurationUserSummaryRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   862  	bb.baseURL += "/userStatusSummary"
   863  	return bb
   864  }
   865  
   866  // UserStatuses returns request builder for ManagedDeviceMobileAppConfigurationUserStatus collection
   867  func (b *ManagedDeviceMobileAppConfigurationRequestBuilder) UserStatuses() *ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequestBuilder {
   868  	bb := &ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   869  	bb.baseURL += "/userStatuses"
   870  	return bb
   871  }
   872  
   873  // ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequestBuilder is request builder for ManagedDeviceMobileAppConfigurationUserStatus collection
   874  type ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequestBuilder struct{ BaseRequestBuilder }
   875  
   876  // Request returns request for ManagedDeviceMobileAppConfigurationUserStatus collection
   877  func (b *ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequestBuilder) Request() *ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequest {
   878  	return &ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequest{
   879  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
   880  	}
   881  }
   882  
   883  // ID returns request builder for ManagedDeviceMobileAppConfigurationUserStatus item
   884  func (b *ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequestBuilder) ID(id string) *ManagedDeviceMobileAppConfigurationUserStatusRequestBuilder {
   885  	bb := &ManagedDeviceMobileAppConfigurationUserStatusRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   886  	bb.baseURL += "/" + id
   887  	return bb
   888  }
   889  
   890  // ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequest is request for ManagedDeviceMobileAppConfigurationUserStatus collection
   891  type ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequest struct{ BaseRequest }
   892  
   893  // Paging perfoms paging operation for ManagedDeviceMobileAppConfigurationUserStatus collection
   894  func (r *ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]ManagedDeviceMobileAppConfigurationUserStatus, error) {
   895  	req, err := r.NewJSONRequest(method, path, obj)
   896  	if err != nil {
   897  		return nil, err
   898  	}
   899  	if ctx != nil {
   900  		req = req.WithContext(ctx)
   901  	}
   902  	res, err := r.client.Do(req)
   903  	if err != nil {
   904  		return nil, err
   905  	}
   906  	var values []ManagedDeviceMobileAppConfigurationUserStatus
   907  	for {
   908  		if res.StatusCode != http.StatusOK {
   909  			b, _ := ioutil.ReadAll(res.Body)
   910  			res.Body.Close()
   911  			errRes := &ErrorResponse{Response: res}
   912  			err := jsonx.Unmarshal(b, errRes)
   913  			if err != nil {
   914  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
   915  			}
   916  			return nil, errRes
   917  		}
   918  		var (
   919  			paging Paging
   920  			value  []ManagedDeviceMobileAppConfigurationUserStatus
   921  		)
   922  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
   923  		res.Body.Close()
   924  		if err != nil {
   925  			return nil, err
   926  		}
   927  		err = jsonx.Unmarshal(paging.Value, &value)
   928  		if err != nil {
   929  			return nil, err
   930  		}
   931  		values = append(values, value...)
   932  		if n >= 0 {
   933  			n--
   934  		}
   935  		if n == 0 || len(paging.NextLink) == 0 {
   936  			return values, nil
   937  		}
   938  		req, err = http.NewRequest("GET", paging.NextLink, nil)
   939  		if ctx != nil {
   940  			req = req.WithContext(ctx)
   941  		}
   942  		res, err = r.client.Do(req)
   943  		if err != nil {
   944  			return nil, err
   945  		}
   946  	}
   947  }
   948  
   949  // GetN performs GET request for ManagedDeviceMobileAppConfigurationUserStatus collection, max N pages
   950  func (r *ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequest) GetN(ctx context.Context, n int) ([]ManagedDeviceMobileAppConfigurationUserStatus, error) {
   951  	var query string
   952  	if r.query != nil {
   953  		query = "?" + r.query.Encode()
   954  	}
   955  	return r.Paging(ctx, "GET", query, nil, n)
   956  }
   957  
   958  // Get performs GET request for ManagedDeviceMobileAppConfigurationUserStatus collection
   959  func (r *ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequest) Get(ctx context.Context) ([]ManagedDeviceMobileAppConfigurationUserStatus, error) {
   960  	return r.GetN(ctx, 0)
   961  }
   962  
   963  // Add performs POST request for ManagedDeviceMobileAppConfigurationUserStatus collection
   964  func (r *ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequest) Add(ctx context.Context, reqObj *ManagedDeviceMobileAppConfigurationUserStatus) (resObj *ManagedDeviceMobileAppConfigurationUserStatus, err error) {
   965  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
   966  	return
   967  }
   968  
   969  // Assignments returns request builder for ManagedEBookAssignment collection
   970  func (b *ManagedEBookRequestBuilder) Assignments() *ManagedEBookAssignmentsCollectionRequestBuilder {
   971  	bb := &ManagedEBookAssignmentsCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   972  	bb.baseURL += "/assignments"
   973  	return bb
   974  }
   975  
   976  // ManagedEBookAssignmentsCollectionRequestBuilder is request builder for ManagedEBookAssignment collection
   977  type ManagedEBookAssignmentsCollectionRequestBuilder struct{ BaseRequestBuilder }
   978  
   979  // Request returns request for ManagedEBookAssignment collection
   980  func (b *ManagedEBookAssignmentsCollectionRequestBuilder) Request() *ManagedEBookAssignmentsCollectionRequest {
   981  	return &ManagedEBookAssignmentsCollectionRequest{
   982  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
   983  	}
   984  }
   985  
   986  // ID returns request builder for ManagedEBookAssignment item
   987  func (b *ManagedEBookAssignmentsCollectionRequestBuilder) ID(id string) *ManagedEBookAssignmentRequestBuilder {
   988  	bb := &ManagedEBookAssignmentRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   989  	bb.baseURL += "/" + id
   990  	return bb
   991  }
   992  
   993  // ManagedEBookAssignmentsCollectionRequest is request for ManagedEBookAssignment collection
   994  type ManagedEBookAssignmentsCollectionRequest struct{ BaseRequest }
   995  
   996  // Paging perfoms paging operation for ManagedEBookAssignment collection
   997  func (r *ManagedEBookAssignmentsCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]ManagedEBookAssignment, error) {
   998  	req, err := r.NewJSONRequest(method, path, obj)
   999  	if err != nil {
  1000  		return nil, err
  1001  	}
  1002  	if ctx != nil {
  1003  		req = req.WithContext(ctx)
  1004  	}
  1005  	res, err := r.client.Do(req)
  1006  	if err != nil {
  1007  		return nil, err
  1008  	}
  1009  	var values []ManagedEBookAssignment
  1010  	for {
  1011  		if res.StatusCode != http.StatusOK {
  1012  			b, _ := ioutil.ReadAll(res.Body)
  1013  			res.Body.Close()
  1014  			errRes := &ErrorResponse{Response: res}
  1015  			err := jsonx.Unmarshal(b, errRes)
  1016  			if err != nil {
  1017  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
  1018  			}
  1019  			return nil, errRes
  1020  		}
  1021  		var (
  1022  			paging Paging
  1023  			value  []ManagedEBookAssignment
  1024  		)
  1025  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
  1026  		res.Body.Close()
  1027  		if err != nil {
  1028  			return nil, err
  1029  		}
  1030  		err = jsonx.Unmarshal(paging.Value, &value)
  1031  		if err != nil {
  1032  			return nil, err
  1033  		}
  1034  		values = append(values, value...)
  1035  		if n >= 0 {
  1036  			n--
  1037  		}
  1038  		if n == 0 || len(paging.NextLink) == 0 {
  1039  			return values, nil
  1040  		}
  1041  		req, err = http.NewRequest("GET", paging.NextLink, nil)
  1042  		if ctx != nil {
  1043  			req = req.WithContext(ctx)
  1044  		}
  1045  		res, err = r.client.Do(req)
  1046  		if err != nil {
  1047  			return nil, err
  1048  		}
  1049  	}
  1050  }
  1051  
  1052  // GetN performs GET request for ManagedEBookAssignment collection, max N pages
  1053  func (r *ManagedEBookAssignmentsCollectionRequest) GetN(ctx context.Context, n int) ([]ManagedEBookAssignment, error) {
  1054  	var query string
  1055  	if r.query != nil {
  1056  		query = "?" + r.query.Encode()
  1057  	}
  1058  	return r.Paging(ctx, "GET", query, nil, n)
  1059  }
  1060  
  1061  // Get performs GET request for ManagedEBookAssignment collection
  1062  func (r *ManagedEBookAssignmentsCollectionRequest) Get(ctx context.Context) ([]ManagedEBookAssignment, error) {
  1063  	return r.GetN(ctx, 0)
  1064  }
  1065  
  1066  // Add performs POST request for ManagedEBookAssignment collection
  1067  func (r *ManagedEBookAssignmentsCollectionRequest) Add(ctx context.Context, reqObj *ManagedEBookAssignment) (resObj *ManagedEBookAssignment, err error) {
  1068  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
  1069  	return
  1070  }
  1071  
  1072  // DeviceStates returns request builder for DeviceInstallState collection
  1073  func (b *ManagedEBookRequestBuilder) DeviceStates() *ManagedEBookDeviceStatesCollectionRequestBuilder {
  1074  	bb := &ManagedEBookDeviceStatesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1075  	bb.baseURL += "/deviceStates"
  1076  	return bb
  1077  }
  1078  
  1079  // ManagedEBookDeviceStatesCollectionRequestBuilder is request builder for DeviceInstallState collection
  1080  type ManagedEBookDeviceStatesCollectionRequestBuilder struct{ BaseRequestBuilder }
  1081  
  1082  // Request returns request for DeviceInstallState collection
  1083  func (b *ManagedEBookDeviceStatesCollectionRequestBuilder) Request() *ManagedEBookDeviceStatesCollectionRequest {
  1084  	return &ManagedEBookDeviceStatesCollectionRequest{
  1085  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
  1086  	}
  1087  }
  1088  
  1089  // ID returns request builder for DeviceInstallState item
  1090  func (b *ManagedEBookDeviceStatesCollectionRequestBuilder) ID(id string) *DeviceInstallStateRequestBuilder {
  1091  	bb := &DeviceInstallStateRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1092  	bb.baseURL += "/" + id
  1093  	return bb
  1094  }
  1095  
  1096  // ManagedEBookDeviceStatesCollectionRequest is request for DeviceInstallState collection
  1097  type ManagedEBookDeviceStatesCollectionRequest struct{ BaseRequest }
  1098  
  1099  // Paging perfoms paging operation for DeviceInstallState collection
  1100  func (r *ManagedEBookDeviceStatesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]DeviceInstallState, error) {
  1101  	req, err := r.NewJSONRequest(method, path, obj)
  1102  	if err != nil {
  1103  		return nil, err
  1104  	}
  1105  	if ctx != nil {
  1106  		req = req.WithContext(ctx)
  1107  	}
  1108  	res, err := r.client.Do(req)
  1109  	if err != nil {
  1110  		return nil, err
  1111  	}
  1112  	var values []DeviceInstallState
  1113  	for {
  1114  		if res.StatusCode != http.StatusOK {
  1115  			b, _ := ioutil.ReadAll(res.Body)
  1116  			res.Body.Close()
  1117  			errRes := &ErrorResponse{Response: res}
  1118  			err := jsonx.Unmarshal(b, errRes)
  1119  			if err != nil {
  1120  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
  1121  			}
  1122  			return nil, errRes
  1123  		}
  1124  		var (
  1125  			paging Paging
  1126  			value  []DeviceInstallState
  1127  		)
  1128  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
  1129  		res.Body.Close()
  1130  		if err != nil {
  1131  			return nil, err
  1132  		}
  1133  		err = jsonx.Unmarshal(paging.Value, &value)
  1134  		if err != nil {
  1135  			return nil, err
  1136  		}
  1137  		values = append(values, value...)
  1138  		if n >= 0 {
  1139  			n--
  1140  		}
  1141  		if n == 0 || len(paging.NextLink) == 0 {
  1142  			return values, nil
  1143  		}
  1144  		req, err = http.NewRequest("GET", paging.NextLink, nil)
  1145  		if ctx != nil {
  1146  			req = req.WithContext(ctx)
  1147  		}
  1148  		res, err = r.client.Do(req)
  1149  		if err != nil {
  1150  			return nil, err
  1151  		}
  1152  	}
  1153  }
  1154  
  1155  // GetN performs GET request for DeviceInstallState collection, max N pages
  1156  func (r *ManagedEBookDeviceStatesCollectionRequest) GetN(ctx context.Context, n int) ([]DeviceInstallState, error) {
  1157  	var query string
  1158  	if r.query != nil {
  1159  		query = "?" + r.query.Encode()
  1160  	}
  1161  	return r.Paging(ctx, "GET", query, nil, n)
  1162  }
  1163  
  1164  // Get performs GET request for DeviceInstallState collection
  1165  func (r *ManagedEBookDeviceStatesCollectionRequest) Get(ctx context.Context) ([]DeviceInstallState, error) {
  1166  	return r.GetN(ctx, 0)
  1167  }
  1168  
  1169  // Add performs POST request for DeviceInstallState collection
  1170  func (r *ManagedEBookDeviceStatesCollectionRequest) Add(ctx context.Context, reqObj *DeviceInstallState) (resObj *DeviceInstallState, err error) {
  1171  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
  1172  	return
  1173  }
  1174  
  1175  // InstallSummary is navigation property
  1176  func (b *ManagedEBookRequestBuilder) InstallSummary() *EBookInstallSummaryRequestBuilder {
  1177  	bb := &EBookInstallSummaryRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1178  	bb.baseURL += "/installSummary"
  1179  	return bb
  1180  }
  1181  
  1182  // UserStateSummary returns request builder for UserInstallStateSummary collection
  1183  func (b *ManagedEBookRequestBuilder) UserStateSummary() *ManagedEBookUserStateSummaryCollectionRequestBuilder {
  1184  	bb := &ManagedEBookUserStateSummaryCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1185  	bb.baseURL += "/userStateSummary"
  1186  	return bb
  1187  }
  1188  
  1189  // ManagedEBookUserStateSummaryCollectionRequestBuilder is request builder for UserInstallStateSummary collection
  1190  type ManagedEBookUserStateSummaryCollectionRequestBuilder struct{ BaseRequestBuilder }
  1191  
  1192  // Request returns request for UserInstallStateSummary collection
  1193  func (b *ManagedEBookUserStateSummaryCollectionRequestBuilder) Request() *ManagedEBookUserStateSummaryCollectionRequest {
  1194  	return &ManagedEBookUserStateSummaryCollectionRequest{
  1195  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
  1196  	}
  1197  }
  1198  
  1199  // ID returns request builder for UserInstallStateSummary item
  1200  func (b *ManagedEBookUserStateSummaryCollectionRequestBuilder) ID(id string) *UserInstallStateSummaryRequestBuilder {
  1201  	bb := &UserInstallStateSummaryRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1202  	bb.baseURL += "/" + id
  1203  	return bb
  1204  }
  1205  
  1206  // ManagedEBookUserStateSummaryCollectionRequest is request for UserInstallStateSummary collection
  1207  type ManagedEBookUserStateSummaryCollectionRequest struct{ BaseRequest }
  1208  
  1209  // Paging perfoms paging operation for UserInstallStateSummary collection
  1210  func (r *ManagedEBookUserStateSummaryCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]UserInstallStateSummary, error) {
  1211  	req, err := r.NewJSONRequest(method, path, obj)
  1212  	if err != nil {
  1213  		return nil, err
  1214  	}
  1215  	if ctx != nil {
  1216  		req = req.WithContext(ctx)
  1217  	}
  1218  	res, err := r.client.Do(req)
  1219  	if err != nil {
  1220  		return nil, err
  1221  	}
  1222  	var values []UserInstallStateSummary
  1223  	for {
  1224  		if res.StatusCode != http.StatusOK {
  1225  			b, _ := ioutil.ReadAll(res.Body)
  1226  			res.Body.Close()
  1227  			errRes := &ErrorResponse{Response: res}
  1228  			err := jsonx.Unmarshal(b, errRes)
  1229  			if err != nil {
  1230  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
  1231  			}
  1232  			return nil, errRes
  1233  		}
  1234  		var (
  1235  			paging Paging
  1236  			value  []UserInstallStateSummary
  1237  		)
  1238  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
  1239  		res.Body.Close()
  1240  		if err != nil {
  1241  			return nil, err
  1242  		}
  1243  		err = jsonx.Unmarshal(paging.Value, &value)
  1244  		if err != nil {
  1245  			return nil, err
  1246  		}
  1247  		values = append(values, value...)
  1248  		if n >= 0 {
  1249  			n--
  1250  		}
  1251  		if n == 0 || len(paging.NextLink) == 0 {
  1252  			return values, nil
  1253  		}
  1254  		req, err = http.NewRequest("GET", paging.NextLink, nil)
  1255  		if ctx != nil {
  1256  			req = req.WithContext(ctx)
  1257  		}
  1258  		res, err = r.client.Do(req)
  1259  		if err != nil {
  1260  			return nil, err
  1261  		}
  1262  	}
  1263  }
  1264  
  1265  // GetN performs GET request for UserInstallStateSummary collection, max N pages
  1266  func (r *ManagedEBookUserStateSummaryCollectionRequest) GetN(ctx context.Context, n int) ([]UserInstallStateSummary, error) {
  1267  	var query string
  1268  	if r.query != nil {
  1269  		query = "?" + r.query.Encode()
  1270  	}
  1271  	return r.Paging(ctx, "GET", query, nil, n)
  1272  }
  1273  
  1274  // Get performs GET request for UserInstallStateSummary collection
  1275  func (r *ManagedEBookUserStateSummaryCollectionRequest) Get(ctx context.Context) ([]UserInstallStateSummary, error) {
  1276  	return r.GetN(ctx, 0)
  1277  }
  1278  
  1279  // Add performs POST request for UserInstallStateSummary collection
  1280  func (r *ManagedEBookUserStateSummaryCollectionRequest) Add(ctx context.Context, reqObj *UserInstallStateSummary) (resObj *UserInstallStateSummary, err error) {
  1281  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
  1282  	return
  1283  }
  1284  
  1285  // ContentVersions returns request builder for MobileAppContent collection
  1286  func (b *ManagedMobileLobAppRequestBuilder) ContentVersions() *ManagedMobileLobAppContentVersionsCollectionRequestBuilder {
  1287  	bb := &ManagedMobileLobAppContentVersionsCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1288  	bb.baseURL += "/contentVersions"
  1289  	return bb
  1290  }
  1291  
  1292  // ManagedMobileLobAppContentVersionsCollectionRequestBuilder is request builder for MobileAppContent collection
  1293  type ManagedMobileLobAppContentVersionsCollectionRequestBuilder struct{ BaseRequestBuilder }
  1294  
  1295  // Request returns request for MobileAppContent collection
  1296  func (b *ManagedMobileLobAppContentVersionsCollectionRequestBuilder) Request() *ManagedMobileLobAppContentVersionsCollectionRequest {
  1297  	return &ManagedMobileLobAppContentVersionsCollectionRequest{
  1298  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
  1299  	}
  1300  }
  1301  
  1302  // ID returns request builder for MobileAppContent item
  1303  func (b *ManagedMobileLobAppContentVersionsCollectionRequestBuilder) ID(id string) *MobileAppContentRequestBuilder {
  1304  	bb := &MobileAppContentRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1305  	bb.baseURL += "/" + id
  1306  	return bb
  1307  }
  1308  
  1309  // ManagedMobileLobAppContentVersionsCollectionRequest is request for MobileAppContent collection
  1310  type ManagedMobileLobAppContentVersionsCollectionRequest struct{ BaseRequest }
  1311  
  1312  // Paging perfoms paging operation for MobileAppContent collection
  1313  func (r *ManagedMobileLobAppContentVersionsCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]MobileAppContent, error) {
  1314  	req, err := r.NewJSONRequest(method, path, obj)
  1315  	if err != nil {
  1316  		return nil, err
  1317  	}
  1318  	if ctx != nil {
  1319  		req = req.WithContext(ctx)
  1320  	}
  1321  	res, err := r.client.Do(req)
  1322  	if err != nil {
  1323  		return nil, err
  1324  	}
  1325  	var values []MobileAppContent
  1326  	for {
  1327  		if res.StatusCode != http.StatusOK {
  1328  			b, _ := ioutil.ReadAll(res.Body)
  1329  			res.Body.Close()
  1330  			errRes := &ErrorResponse{Response: res}
  1331  			err := jsonx.Unmarshal(b, errRes)
  1332  			if err != nil {
  1333  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
  1334  			}
  1335  			return nil, errRes
  1336  		}
  1337  		var (
  1338  			paging Paging
  1339  			value  []MobileAppContent
  1340  		)
  1341  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
  1342  		res.Body.Close()
  1343  		if err != nil {
  1344  			return nil, err
  1345  		}
  1346  		err = jsonx.Unmarshal(paging.Value, &value)
  1347  		if err != nil {
  1348  			return nil, err
  1349  		}
  1350  		values = append(values, value...)
  1351  		if n >= 0 {
  1352  			n--
  1353  		}
  1354  		if n == 0 || len(paging.NextLink) == 0 {
  1355  			return values, nil
  1356  		}
  1357  		req, err = http.NewRequest("GET", paging.NextLink, nil)
  1358  		if ctx != nil {
  1359  			req = req.WithContext(ctx)
  1360  		}
  1361  		res, err = r.client.Do(req)
  1362  		if err != nil {
  1363  			return nil, err
  1364  		}
  1365  	}
  1366  }
  1367  
  1368  // GetN performs GET request for MobileAppContent collection, max N pages
  1369  func (r *ManagedMobileLobAppContentVersionsCollectionRequest) GetN(ctx context.Context, n int) ([]MobileAppContent, error) {
  1370  	var query string
  1371  	if r.query != nil {
  1372  		query = "?" + r.query.Encode()
  1373  	}
  1374  	return r.Paging(ctx, "GET", query, nil, n)
  1375  }
  1376  
  1377  // Get performs GET request for MobileAppContent collection
  1378  func (r *ManagedMobileLobAppContentVersionsCollectionRequest) Get(ctx context.Context) ([]MobileAppContent, error) {
  1379  	return r.GetN(ctx, 0)
  1380  }
  1381  
  1382  // Add performs POST request for MobileAppContent collection
  1383  func (r *ManagedMobileLobAppContentVersionsCollectionRequest) Add(ctx context.Context, reqObj *MobileAppContent) (resObj *MobileAppContent, err error) {
  1384  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
  1385  	return
  1386  }