github.com/yaegashi/msgraph.go@v0.1.4/beta/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  // ManagedDeviceCollectionExecuteActionRequestParameter undocumented
    15  type ManagedDeviceCollectionExecuteActionRequestParameter struct {
    16  	// ActionName undocumented
    17  	ActionName *ManagedDeviceRemoteAction `json:"actionName,omitempty"`
    18  	// KeepEnrollmentData undocumented
    19  	KeepEnrollmentData *bool `json:"keepEnrollmentData,omitempty"`
    20  	// KeepUserData undocumented
    21  	KeepUserData *bool `json:"keepUserData,omitempty"`
    22  	// DeviceIDs undocumented
    23  	DeviceIDs []string `json:"deviceIds,omitempty"`
    24  	// NotificationTitle undocumented
    25  	NotificationTitle *string `json:"notificationTitle,omitempty"`
    26  	// NotificationBody undocumented
    27  	NotificationBody *string `json:"notificationBody,omitempty"`
    28  	// DeviceName undocumented
    29  	DeviceName *string `json:"deviceName,omitempty"`
    30  }
    31  
    32  // ManagedAppPolicyTargetAppsRequestParameter undocumented
    33  type ManagedAppPolicyTargetAppsRequestParameter struct {
    34  	// Apps undocumented
    35  	Apps []ManagedMobileApp `json:"apps,omitempty"`
    36  }
    37  
    38  // ManagedAppProtectionTargetAppsRequestParameter undocumented
    39  type ManagedAppProtectionTargetAppsRequestParameter struct {
    40  	// Apps undocumented
    41  	Apps []ManagedMobileApp `json:"apps,omitempty"`
    42  }
    43  
    44  // ManagedDeviceOverrideComplianceStateRequestParameter undocumented
    45  type ManagedDeviceOverrideComplianceStateRequestParameter struct {
    46  	// ComplianceState undocumented
    47  	ComplianceState *AdministratorConfiguredDeviceComplianceState `json:"complianceState,omitempty"`
    48  	// RemediationURL undocumented
    49  	RemediationURL *string `json:"remediationUrl,omitempty"`
    50  }
    51  
    52  // ManagedDeviceEnableLostModeRequestParameter undocumented
    53  type ManagedDeviceEnableLostModeRequestParameter struct {
    54  	// Message undocumented
    55  	Message *string `json:"message,omitempty"`
    56  	// PhoneNumber undocumented
    57  	PhoneNumber *string `json:"phoneNumber,omitempty"`
    58  	// Footer undocumented
    59  	Footer *string `json:"footer,omitempty"`
    60  }
    61  
    62  // ManagedDevicePlayLostModeSoundRequestParameter undocumented
    63  type ManagedDevicePlayLostModeSoundRequestParameter struct {
    64  }
    65  
    66  // ManagedDeviceSetDeviceNameRequestParameter undocumented
    67  type ManagedDeviceSetDeviceNameRequestParameter struct {
    68  	// DeviceName undocumented
    69  	DeviceName *string `json:"deviceName,omitempty"`
    70  }
    71  
    72  // ManagedDeviceRotateFileVaultKeyRequestParameter undocumented
    73  type ManagedDeviceRotateFileVaultKeyRequestParameter struct {
    74  }
    75  
    76  // ManagedDeviceRetireRequestParameter undocumented
    77  type ManagedDeviceRetireRequestParameter struct {
    78  }
    79  
    80  // ManagedDeviceWipeRequestParameter undocumented
    81  type ManagedDeviceWipeRequestParameter struct {
    82  	// KeepEnrollmentData undocumented
    83  	KeepEnrollmentData *bool `json:"keepEnrollmentData,omitempty"`
    84  	// KeepUserData undocumented
    85  	KeepUserData *bool `json:"keepUserData,omitempty"`
    86  	// MacOsUnlockCode undocumented
    87  	MacOsUnlockCode *string `json:"macOsUnlockCode,omitempty"`
    88  }
    89  
    90  // ManagedDeviceResetPasscodeRequestParameter undocumented
    91  type ManagedDeviceResetPasscodeRequestParameter struct {
    92  }
    93  
    94  // ManagedDeviceRemoteLockRequestParameter undocumented
    95  type ManagedDeviceRemoteLockRequestParameter struct {
    96  }
    97  
    98  // ManagedDeviceRequestRemoteAssistanceRequestParameter undocumented
    99  type ManagedDeviceRequestRemoteAssistanceRequestParameter struct {
   100  }
   101  
   102  // ManagedDeviceDisableLostModeRequestParameter undocumented
   103  type ManagedDeviceDisableLostModeRequestParameter struct {
   104  }
   105  
   106  // ManagedDeviceLocateDeviceRequestParameter undocumented
   107  type ManagedDeviceLocateDeviceRequestParameter struct {
   108  }
   109  
   110  // ManagedDeviceBypassActivationLockRequestParameter undocumented
   111  type ManagedDeviceBypassActivationLockRequestParameter struct {
   112  }
   113  
   114  // ManagedDeviceRebootNowRequestParameter undocumented
   115  type ManagedDeviceRebootNowRequestParameter struct {
   116  }
   117  
   118  // ManagedDeviceShutDownRequestParameter undocumented
   119  type ManagedDeviceShutDownRequestParameter struct {
   120  }
   121  
   122  // ManagedDeviceRecoverPasscodeRequestParameter undocumented
   123  type ManagedDeviceRecoverPasscodeRequestParameter struct {
   124  }
   125  
   126  // ManagedDeviceCleanWindowsDeviceRequestParameter undocumented
   127  type ManagedDeviceCleanWindowsDeviceRequestParameter struct {
   128  	// KeepUserData undocumented
   129  	KeepUserData *bool `json:"keepUserData,omitempty"`
   130  }
   131  
   132  // ManagedDeviceLogoutSharedAppleDeviceActiveUserRequestParameter undocumented
   133  type ManagedDeviceLogoutSharedAppleDeviceActiveUserRequestParameter struct {
   134  }
   135  
   136  // ManagedDeviceDeleteUserFromSharedAppleDeviceRequestParameter undocumented
   137  type ManagedDeviceDeleteUserFromSharedAppleDeviceRequestParameter struct {
   138  	// UserPrincipalName undocumented
   139  	UserPrincipalName *string `json:"userPrincipalName,omitempty"`
   140  }
   141  
   142  // ManagedDeviceSyncDeviceRequestParameter undocumented
   143  type ManagedDeviceSyncDeviceRequestParameter struct {
   144  }
   145  
   146  // ManagedDeviceWindowsDefenderScanRequestParameter undocumented
   147  type ManagedDeviceWindowsDefenderScanRequestParameter struct {
   148  	// QuickScan undocumented
   149  	QuickScan *bool `json:"quickScan,omitempty"`
   150  }
   151  
   152  // ManagedDeviceWindowsDefenderUpdateSignaturesRequestParameter undocumented
   153  type ManagedDeviceWindowsDefenderUpdateSignaturesRequestParameter struct {
   154  }
   155  
   156  // ManagedDeviceUpdateWindowsDeviceAccountRequestParameter undocumented
   157  type ManagedDeviceUpdateWindowsDeviceAccountRequestParameter struct {
   158  	// UpdateWindowsDeviceAccountActionParameter undocumented
   159  	UpdateWindowsDeviceAccountActionParameter *UpdateWindowsDeviceAccountActionParameter `json:"updateWindowsDeviceAccountActionParameter,omitempty"`
   160  }
   161  
   162  // ManagedDeviceRevokeAppleVPPLicensesRequestParameter undocumented
   163  type ManagedDeviceRevokeAppleVPPLicensesRequestParameter struct {
   164  }
   165  
   166  // ManagedDeviceRotateBitLockerKeysRequestParameter undocumented
   167  type ManagedDeviceRotateBitLockerKeysRequestParameter struct {
   168  }
   169  
   170  // ManagedDeviceSendCustomNotificationToCompanyPortalRequestParameter undocumented
   171  type ManagedDeviceSendCustomNotificationToCompanyPortalRequestParameter struct {
   172  	// NotificationTitle undocumented
   173  	NotificationTitle *string `json:"notificationTitle,omitempty"`
   174  	// NotificationBody undocumented
   175  	NotificationBody *string `json:"notificationBody,omitempty"`
   176  }
   177  
   178  // ManagedDeviceTriggerConfigurationManagerActionRequestParameter undocumented
   179  type ManagedDeviceTriggerConfigurationManagerActionRequestParameter struct {
   180  	// ConfigurationManagerAction undocumented
   181  	ConfigurationManagerAction *ConfigurationManagerAction `json:"configurationManagerAction,omitempty"`
   182  }
   183  
   184  // ManagedDeviceMobileAppConfigurationAssignRequestParameter undocumented
   185  type ManagedDeviceMobileAppConfigurationAssignRequestParameter struct {
   186  	// Assignments undocumented
   187  	Assignments []ManagedDeviceMobileAppConfigurationAssignment `json:"assignments,omitempty"`
   188  }
   189  
   190  // ManagedEBookAssignRequestParameter undocumented
   191  type ManagedEBookAssignRequestParameter struct {
   192  	// ManagedEBookAssignments undocumented
   193  	ManagedEBookAssignments []ManagedEBookAssignment `json:"managedEBookAssignments,omitempty"`
   194  }
   195  
   196  // AppliedPolicies returns request builder for ManagedAppPolicy collection
   197  func (b *ManagedAppRegistrationRequestBuilder) AppliedPolicies() *ManagedAppRegistrationAppliedPoliciesCollectionRequestBuilder {
   198  	bb := &ManagedAppRegistrationAppliedPoliciesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   199  	bb.baseURL += "/appliedPolicies"
   200  	return bb
   201  }
   202  
   203  // ManagedAppRegistrationAppliedPoliciesCollectionRequestBuilder is request builder for ManagedAppPolicy collection
   204  type ManagedAppRegistrationAppliedPoliciesCollectionRequestBuilder struct{ BaseRequestBuilder }
   205  
   206  // Request returns request for ManagedAppPolicy collection
   207  func (b *ManagedAppRegistrationAppliedPoliciesCollectionRequestBuilder) Request() *ManagedAppRegistrationAppliedPoliciesCollectionRequest {
   208  	return &ManagedAppRegistrationAppliedPoliciesCollectionRequest{
   209  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
   210  	}
   211  }
   212  
   213  // ID returns request builder for ManagedAppPolicy item
   214  func (b *ManagedAppRegistrationAppliedPoliciesCollectionRequestBuilder) ID(id string) *ManagedAppPolicyRequestBuilder {
   215  	bb := &ManagedAppPolicyRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   216  	bb.baseURL += "/" + id
   217  	return bb
   218  }
   219  
   220  // ManagedAppRegistrationAppliedPoliciesCollectionRequest is request for ManagedAppPolicy collection
   221  type ManagedAppRegistrationAppliedPoliciesCollectionRequest struct{ BaseRequest }
   222  
   223  // Paging perfoms paging operation for ManagedAppPolicy collection
   224  func (r *ManagedAppRegistrationAppliedPoliciesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]ManagedAppPolicy, error) {
   225  	req, err := r.NewJSONRequest(method, path, obj)
   226  	if err != nil {
   227  		return nil, err
   228  	}
   229  	if ctx != nil {
   230  		req = req.WithContext(ctx)
   231  	}
   232  	res, err := r.client.Do(req)
   233  	if err != nil {
   234  		return nil, err
   235  	}
   236  	var values []ManagedAppPolicy
   237  	for {
   238  		if res.StatusCode != http.StatusOK {
   239  			b, _ := ioutil.ReadAll(res.Body)
   240  			res.Body.Close()
   241  			errRes := &ErrorResponse{Response: res}
   242  			err := jsonx.Unmarshal(b, errRes)
   243  			if err != nil {
   244  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
   245  			}
   246  			return nil, errRes
   247  		}
   248  		var (
   249  			paging Paging
   250  			value  []ManagedAppPolicy
   251  		)
   252  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
   253  		res.Body.Close()
   254  		if err != nil {
   255  			return nil, err
   256  		}
   257  		err = jsonx.Unmarshal(paging.Value, &value)
   258  		if err != nil {
   259  			return nil, err
   260  		}
   261  		values = append(values, value...)
   262  		if n >= 0 {
   263  			n--
   264  		}
   265  		if n == 0 || len(paging.NextLink) == 0 {
   266  			return values, nil
   267  		}
   268  		req, err = http.NewRequest("GET", paging.NextLink, nil)
   269  		if ctx != nil {
   270  			req = req.WithContext(ctx)
   271  		}
   272  		res, err = r.client.Do(req)
   273  		if err != nil {
   274  			return nil, err
   275  		}
   276  	}
   277  }
   278  
   279  // GetN performs GET request for ManagedAppPolicy collection, max N pages
   280  func (r *ManagedAppRegistrationAppliedPoliciesCollectionRequest) GetN(ctx context.Context, n int) ([]ManagedAppPolicy, error) {
   281  	var query string
   282  	if r.query != nil {
   283  		query = "?" + r.query.Encode()
   284  	}
   285  	return r.Paging(ctx, "GET", query, nil, n)
   286  }
   287  
   288  // Get performs GET request for ManagedAppPolicy collection
   289  func (r *ManagedAppRegistrationAppliedPoliciesCollectionRequest) Get(ctx context.Context) ([]ManagedAppPolicy, error) {
   290  	return r.GetN(ctx, 0)
   291  }
   292  
   293  // Add performs POST request for ManagedAppPolicy collection
   294  func (r *ManagedAppRegistrationAppliedPoliciesCollectionRequest) Add(ctx context.Context, reqObj *ManagedAppPolicy) (resObj *ManagedAppPolicy, err error) {
   295  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
   296  	return
   297  }
   298  
   299  // IntendedPolicies returns request builder for ManagedAppPolicy collection
   300  func (b *ManagedAppRegistrationRequestBuilder) IntendedPolicies() *ManagedAppRegistrationIntendedPoliciesCollectionRequestBuilder {
   301  	bb := &ManagedAppRegistrationIntendedPoliciesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   302  	bb.baseURL += "/intendedPolicies"
   303  	return bb
   304  }
   305  
   306  // ManagedAppRegistrationIntendedPoliciesCollectionRequestBuilder is request builder for ManagedAppPolicy collection
   307  type ManagedAppRegistrationIntendedPoliciesCollectionRequestBuilder struct{ BaseRequestBuilder }
   308  
   309  // Request returns request for ManagedAppPolicy collection
   310  func (b *ManagedAppRegistrationIntendedPoliciesCollectionRequestBuilder) Request() *ManagedAppRegistrationIntendedPoliciesCollectionRequest {
   311  	return &ManagedAppRegistrationIntendedPoliciesCollectionRequest{
   312  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
   313  	}
   314  }
   315  
   316  // ID returns request builder for ManagedAppPolicy item
   317  func (b *ManagedAppRegistrationIntendedPoliciesCollectionRequestBuilder) ID(id string) *ManagedAppPolicyRequestBuilder {
   318  	bb := &ManagedAppPolicyRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   319  	bb.baseURL += "/" + id
   320  	return bb
   321  }
   322  
   323  // ManagedAppRegistrationIntendedPoliciesCollectionRequest is request for ManagedAppPolicy collection
   324  type ManagedAppRegistrationIntendedPoliciesCollectionRequest struct{ BaseRequest }
   325  
   326  // Paging perfoms paging operation for ManagedAppPolicy collection
   327  func (r *ManagedAppRegistrationIntendedPoliciesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]ManagedAppPolicy, error) {
   328  	req, err := r.NewJSONRequest(method, path, obj)
   329  	if err != nil {
   330  		return nil, err
   331  	}
   332  	if ctx != nil {
   333  		req = req.WithContext(ctx)
   334  	}
   335  	res, err := r.client.Do(req)
   336  	if err != nil {
   337  		return nil, err
   338  	}
   339  	var values []ManagedAppPolicy
   340  	for {
   341  		if res.StatusCode != http.StatusOK {
   342  			b, _ := ioutil.ReadAll(res.Body)
   343  			res.Body.Close()
   344  			errRes := &ErrorResponse{Response: res}
   345  			err := jsonx.Unmarshal(b, errRes)
   346  			if err != nil {
   347  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
   348  			}
   349  			return nil, errRes
   350  		}
   351  		var (
   352  			paging Paging
   353  			value  []ManagedAppPolicy
   354  		)
   355  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
   356  		res.Body.Close()
   357  		if err != nil {
   358  			return nil, err
   359  		}
   360  		err = jsonx.Unmarshal(paging.Value, &value)
   361  		if err != nil {
   362  			return nil, err
   363  		}
   364  		values = append(values, value...)
   365  		if n >= 0 {
   366  			n--
   367  		}
   368  		if n == 0 || len(paging.NextLink) == 0 {
   369  			return values, nil
   370  		}
   371  		req, err = http.NewRequest("GET", paging.NextLink, nil)
   372  		if ctx != nil {
   373  			req = req.WithContext(ctx)
   374  		}
   375  		res, err = r.client.Do(req)
   376  		if err != nil {
   377  			return nil, err
   378  		}
   379  	}
   380  }
   381  
   382  // GetN performs GET request for ManagedAppPolicy collection, max N pages
   383  func (r *ManagedAppRegistrationIntendedPoliciesCollectionRequest) GetN(ctx context.Context, n int) ([]ManagedAppPolicy, error) {
   384  	var query string
   385  	if r.query != nil {
   386  		query = "?" + r.query.Encode()
   387  	}
   388  	return r.Paging(ctx, "GET", query, nil, n)
   389  }
   390  
   391  // Get performs GET request for ManagedAppPolicy collection
   392  func (r *ManagedAppRegistrationIntendedPoliciesCollectionRequest) Get(ctx context.Context) ([]ManagedAppPolicy, error) {
   393  	return r.GetN(ctx, 0)
   394  }
   395  
   396  // Add performs POST request for ManagedAppPolicy collection
   397  func (r *ManagedAppRegistrationIntendedPoliciesCollectionRequest) Add(ctx context.Context, reqObj *ManagedAppPolicy) (resObj *ManagedAppPolicy, err error) {
   398  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
   399  	return
   400  }
   401  
   402  // Operations returns request builder for ManagedAppOperation collection
   403  func (b *ManagedAppRegistrationRequestBuilder) Operations() *ManagedAppRegistrationOperationsCollectionRequestBuilder {
   404  	bb := &ManagedAppRegistrationOperationsCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   405  	bb.baseURL += "/operations"
   406  	return bb
   407  }
   408  
   409  // ManagedAppRegistrationOperationsCollectionRequestBuilder is request builder for ManagedAppOperation collection
   410  type ManagedAppRegistrationOperationsCollectionRequestBuilder struct{ BaseRequestBuilder }
   411  
   412  // Request returns request for ManagedAppOperation collection
   413  func (b *ManagedAppRegistrationOperationsCollectionRequestBuilder) Request() *ManagedAppRegistrationOperationsCollectionRequest {
   414  	return &ManagedAppRegistrationOperationsCollectionRequest{
   415  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
   416  	}
   417  }
   418  
   419  // ID returns request builder for ManagedAppOperation item
   420  func (b *ManagedAppRegistrationOperationsCollectionRequestBuilder) ID(id string) *ManagedAppOperationRequestBuilder {
   421  	bb := &ManagedAppOperationRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   422  	bb.baseURL += "/" + id
   423  	return bb
   424  }
   425  
   426  // ManagedAppRegistrationOperationsCollectionRequest is request for ManagedAppOperation collection
   427  type ManagedAppRegistrationOperationsCollectionRequest struct{ BaseRequest }
   428  
   429  // Paging perfoms paging operation for ManagedAppOperation collection
   430  func (r *ManagedAppRegistrationOperationsCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]ManagedAppOperation, error) {
   431  	req, err := r.NewJSONRequest(method, path, obj)
   432  	if err != nil {
   433  		return nil, err
   434  	}
   435  	if ctx != nil {
   436  		req = req.WithContext(ctx)
   437  	}
   438  	res, err := r.client.Do(req)
   439  	if err != nil {
   440  		return nil, err
   441  	}
   442  	var values []ManagedAppOperation
   443  	for {
   444  		if res.StatusCode != http.StatusOK {
   445  			b, _ := ioutil.ReadAll(res.Body)
   446  			res.Body.Close()
   447  			errRes := &ErrorResponse{Response: res}
   448  			err := jsonx.Unmarshal(b, errRes)
   449  			if err != nil {
   450  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
   451  			}
   452  			return nil, errRes
   453  		}
   454  		var (
   455  			paging Paging
   456  			value  []ManagedAppOperation
   457  		)
   458  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
   459  		res.Body.Close()
   460  		if err != nil {
   461  			return nil, err
   462  		}
   463  		err = jsonx.Unmarshal(paging.Value, &value)
   464  		if err != nil {
   465  			return nil, err
   466  		}
   467  		values = append(values, value...)
   468  		if n >= 0 {
   469  			n--
   470  		}
   471  		if n == 0 || len(paging.NextLink) == 0 {
   472  			return values, nil
   473  		}
   474  		req, err = http.NewRequest("GET", paging.NextLink, nil)
   475  		if ctx != nil {
   476  			req = req.WithContext(ctx)
   477  		}
   478  		res, err = r.client.Do(req)
   479  		if err != nil {
   480  			return nil, err
   481  		}
   482  	}
   483  }
   484  
   485  // GetN performs GET request for ManagedAppOperation collection, max N pages
   486  func (r *ManagedAppRegistrationOperationsCollectionRequest) GetN(ctx context.Context, n int) ([]ManagedAppOperation, error) {
   487  	var query string
   488  	if r.query != nil {
   489  		query = "?" + r.query.Encode()
   490  	}
   491  	return r.Paging(ctx, "GET", query, nil, n)
   492  }
   493  
   494  // Get performs GET request for ManagedAppOperation collection
   495  func (r *ManagedAppRegistrationOperationsCollectionRequest) Get(ctx context.Context) ([]ManagedAppOperation, error) {
   496  	return r.GetN(ctx, 0)
   497  }
   498  
   499  // Add performs POST request for ManagedAppOperation collection
   500  func (r *ManagedAppRegistrationOperationsCollectionRequest) Add(ctx context.Context, reqObj *ManagedAppOperation) (resObj *ManagedAppOperation, err error) {
   501  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
   502  	return
   503  }
   504  
   505  // DetectedApps returns request builder for DetectedApp collection
   506  func (b *ManagedDeviceRequestBuilder) DetectedApps() *ManagedDeviceDetectedAppsCollectionRequestBuilder {
   507  	bb := &ManagedDeviceDetectedAppsCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   508  	bb.baseURL += "/detectedApps"
   509  	return bb
   510  }
   511  
   512  // ManagedDeviceDetectedAppsCollectionRequestBuilder is request builder for DetectedApp collection
   513  type ManagedDeviceDetectedAppsCollectionRequestBuilder struct{ BaseRequestBuilder }
   514  
   515  // Request returns request for DetectedApp collection
   516  func (b *ManagedDeviceDetectedAppsCollectionRequestBuilder) Request() *ManagedDeviceDetectedAppsCollectionRequest {
   517  	return &ManagedDeviceDetectedAppsCollectionRequest{
   518  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
   519  	}
   520  }
   521  
   522  // ID returns request builder for DetectedApp item
   523  func (b *ManagedDeviceDetectedAppsCollectionRequestBuilder) ID(id string) *DetectedAppRequestBuilder {
   524  	bb := &DetectedAppRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   525  	bb.baseURL += "/" + id
   526  	return bb
   527  }
   528  
   529  // ManagedDeviceDetectedAppsCollectionRequest is request for DetectedApp collection
   530  type ManagedDeviceDetectedAppsCollectionRequest struct{ BaseRequest }
   531  
   532  // Paging perfoms paging operation for DetectedApp collection
   533  func (r *ManagedDeviceDetectedAppsCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]DetectedApp, error) {
   534  	req, err := r.NewJSONRequest(method, path, obj)
   535  	if err != nil {
   536  		return nil, err
   537  	}
   538  	if ctx != nil {
   539  		req = req.WithContext(ctx)
   540  	}
   541  	res, err := r.client.Do(req)
   542  	if err != nil {
   543  		return nil, err
   544  	}
   545  	var values []DetectedApp
   546  	for {
   547  		if res.StatusCode != http.StatusOK {
   548  			b, _ := ioutil.ReadAll(res.Body)
   549  			res.Body.Close()
   550  			errRes := &ErrorResponse{Response: res}
   551  			err := jsonx.Unmarshal(b, errRes)
   552  			if err != nil {
   553  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
   554  			}
   555  			return nil, errRes
   556  		}
   557  		var (
   558  			paging Paging
   559  			value  []DetectedApp
   560  		)
   561  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
   562  		res.Body.Close()
   563  		if err != nil {
   564  			return nil, err
   565  		}
   566  		err = jsonx.Unmarshal(paging.Value, &value)
   567  		if err != nil {
   568  			return nil, err
   569  		}
   570  		values = append(values, value...)
   571  		if n >= 0 {
   572  			n--
   573  		}
   574  		if n == 0 || len(paging.NextLink) == 0 {
   575  			return values, nil
   576  		}
   577  		req, err = http.NewRequest("GET", paging.NextLink, nil)
   578  		if ctx != nil {
   579  			req = req.WithContext(ctx)
   580  		}
   581  		res, err = r.client.Do(req)
   582  		if err != nil {
   583  			return nil, err
   584  		}
   585  	}
   586  }
   587  
   588  // GetN performs GET request for DetectedApp collection, max N pages
   589  func (r *ManagedDeviceDetectedAppsCollectionRequest) GetN(ctx context.Context, n int) ([]DetectedApp, error) {
   590  	var query string
   591  	if r.query != nil {
   592  		query = "?" + r.query.Encode()
   593  	}
   594  	return r.Paging(ctx, "GET", query, nil, n)
   595  }
   596  
   597  // Get performs GET request for DetectedApp collection
   598  func (r *ManagedDeviceDetectedAppsCollectionRequest) Get(ctx context.Context) ([]DetectedApp, error) {
   599  	return r.GetN(ctx, 0)
   600  }
   601  
   602  // Add performs POST request for DetectedApp collection
   603  func (r *ManagedDeviceDetectedAppsCollectionRequest) Add(ctx context.Context, reqObj *DetectedApp) (resObj *DetectedApp, err error) {
   604  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
   605  	return
   606  }
   607  
   608  // DeviceCategory is navigation property
   609  func (b *ManagedDeviceRequestBuilder) DeviceCategory() *DeviceCategoryRequestBuilder {
   610  	bb := &DeviceCategoryRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   611  	bb.baseURL += "/deviceCategory"
   612  	return bb
   613  }
   614  
   615  // DeviceCompliancePolicyStates returns request builder for DeviceCompliancePolicyState collection
   616  func (b *ManagedDeviceRequestBuilder) DeviceCompliancePolicyStates() *ManagedDeviceDeviceCompliancePolicyStatesCollectionRequestBuilder {
   617  	bb := &ManagedDeviceDeviceCompliancePolicyStatesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   618  	bb.baseURL += "/deviceCompliancePolicyStates"
   619  	return bb
   620  }
   621  
   622  // ManagedDeviceDeviceCompliancePolicyStatesCollectionRequestBuilder is request builder for DeviceCompliancePolicyState collection
   623  type ManagedDeviceDeviceCompliancePolicyStatesCollectionRequestBuilder struct{ BaseRequestBuilder }
   624  
   625  // Request returns request for DeviceCompliancePolicyState collection
   626  func (b *ManagedDeviceDeviceCompliancePolicyStatesCollectionRequestBuilder) Request() *ManagedDeviceDeviceCompliancePolicyStatesCollectionRequest {
   627  	return &ManagedDeviceDeviceCompliancePolicyStatesCollectionRequest{
   628  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
   629  	}
   630  }
   631  
   632  // ID returns request builder for DeviceCompliancePolicyState item
   633  func (b *ManagedDeviceDeviceCompliancePolicyStatesCollectionRequestBuilder) ID(id string) *DeviceCompliancePolicyStateRequestBuilder {
   634  	bb := &DeviceCompliancePolicyStateRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   635  	bb.baseURL += "/" + id
   636  	return bb
   637  }
   638  
   639  // ManagedDeviceDeviceCompliancePolicyStatesCollectionRequest is request for DeviceCompliancePolicyState collection
   640  type ManagedDeviceDeviceCompliancePolicyStatesCollectionRequest struct{ BaseRequest }
   641  
   642  // Paging perfoms paging operation for DeviceCompliancePolicyState collection
   643  func (r *ManagedDeviceDeviceCompliancePolicyStatesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]DeviceCompliancePolicyState, error) {
   644  	req, err := r.NewJSONRequest(method, path, obj)
   645  	if err != nil {
   646  		return nil, err
   647  	}
   648  	if ctx != nil {
   649  		req = req.WithContext(ctx)
   650  	}
   651  	res, err := r.client.Do(req)
   652  	if err != nil {
   653  		return nil, err
   654  	}
   655  	var values []DeviceCompliancePolicyState
   656  	for {
   657  		if res.StatusCode != http.StatusOK {
   658  			b, _ := ioutil.ReadAll(res.Body)
   659  			res.Body.Close()
   660  			errRes := &ErrorResponse{Response: res}
   661  			err := jsonx.Unmarshal(b, errRes)
   662  			if err != nil {
   663  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
   664  			}
   665  			return nil, errRes
   666  		}
   667  		var (
   668  			paging Paging
   669  			value  []DeviceCompliancePolicyState
   670  		)
   671  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
   672  		res.Body.Close()
   673  		if err != nil {
   674  			return nil, err
   675  		}
   676  		err = jsonx.Unmarshal(paging.Value, &value)
   677  		if err != nil {
   678  			return nil, err
   679  		}
   680  		values = append(values, value...)
   681  		if n >= 0 {
   682  			n--
   683  		}
   684  		if n == 0 || len(paging.NextLink) == 0 {
   685  			return values, nil
   686  		}
   687  		req, err = http.NewRequest("GET", paging.NextLink, nil)
   688  		if ctx != nil {
   689  			req = req.WithContext(ctx)
   690  		}
   691  		res, err = r.client.Do(req)
   692  		if err != nil {
   693  			return nil, err
   694  		}
   695  	}
   696  }
   697  
   698  // GetN performs GET request for DeviceCompliancePolicyState collection, max N pages
   699  func (r *ManagedDeviceDeviceCompliancePolicyStatesCollectionRequest) GetN(ctx context.Context, n int) ([]DeviceCompliancePolicyState, error) {
   700  	var query string
   701  	if r.query != nil {
   702  		query = "?" + r.query.Encode()
   703  	}
   704  	return r.Paging(ctx, "GET", query, nil, n)
   705  }
   706  
   707  // Get performs GET request for DeviceCompliancePolicyState collection
   708  func (r *ManagedDeviceDeviceCompliancePolicyStatesCollectionRequest) Get(ctx context.Context) ([]DeviceCompliancePolicyState, error) {
   709  	return r.GetN(ctx, 0)
   710  }
   711  
   712  // Add performs POST request for DeviceCompliancePolicyState collection
   713  func (r *ManagedDeviceDeviceCompliancePolicyStatesCollectionRequest) Add(ctx context.Context, reqObj *DeviceCompliancePolicyState) (resObj *DeviceCompliancePolicyState, err error) {
   714  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
   715  	return
   716  }
   717  
   718  // DeviceConfigurationStates returns request builder for DeviceConfigurationState collection
   719  func (b *ManagedDeviceRequestBuilder) DeviceConfigurationStates() *ManagedDeviceDeviceConfigurationStatesCollectionRequestBuilder {
   720  	bb := &ManagedDeviceDeviceConfigurationStatesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   721  	bb.baseURL += "/deviceConfigurationStates"
   722  	return bb
   723  }
   724  
   725  // ManagedDeviceDeviceConfigurationStatesCollectionRequestBuilder is request builder for DeviceConfigurationState collection
   726  type ManagedDeviceDeviceConfigurationStatesCollectionRequestBuilder struct{ BaseRequestBuilder }
   727  
   728  // Request returns request for DeviceConfigurationState collection
   729  func (b *ManagedDeviceDeviceConfigurationStatesCollectionRequestBuilder) Request() *ManagedDeviceDeviceConfigurationStatesCollectionRequest {
   730  	return &ManagedDeviceDeviceConfigurationStatesCollectionRequest{
   731  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
   732  	}
   733  }
   734  
   735  // ID returns request builder for DeviceConfigurationState item
   736  func (b *ManagedDeviceDeviceConfigurationStatesCollectionRequestBuilder) ID(id string) *DeviceConfigurationStateRequestBuilder {
   737  	bb := &DeviceConfigurationStateRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   738  	bb.baseURL += "/" + id
   739  	return bb
   740  }
   741  
   742  // ManagedDeviceDeviceConfigurationStatesCollectionRequest is request for DeviceConfigurationState collection
   743  type ManagedDeviceDeviceConfigurationStatesCollectionRequest struct{ BaseRequest }
   744  
   745  // Paging perfoms paging operation for DeviceConfigurationState collection
   746  func (r *ManagedDeviceDeviceConfigurationStatesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]DeviceConfigurationState, error) {
   747  	req, err := r.NewJSONRequest(method, path, obj)
   748  	if err != nil {
   749  		return nil, err
   750  	}
   751  	if ctx != nil {
   752  		req = req.WithContext(ctx)
   753  	}
   754  	res, err := r.client.Do(req)
   755  	if err != nil {
   756  		return nil, err
   757  	}
   758  	var values []DeviceConfigurationState
   759  	for {
   760  		if res.StatusCode != http.StatusOK {
   761  			b, _ := ioutil.ReadAll(res.Body)
   762  			res.Body.Close()
   763  			errRes := &ErrorResponse{Response: res}
   764  			err := jsonx.Unmarshal(b, errRes)
   765  			if err != nil {
   766  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
   767  			}
   768  			return nil, errRes
   769  		}
   770  		var (
   771  			paging Paging
   772  			value  []DeviceConfigurationState
   773  		)
   774  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
   775  		res.Body.Close()
   776  		if err != nil {
   777  			return nil, err
   778  		}
   779  		err = jsonx.Unmarshal(paging.Value, &value)
   780  		if err != nil {
   781  			return nil, err
   782  		}
   783  		values = append(values, value...)
   784  		if n >= 0 {
   785  			n--
   786  		}
   787  		if n == 0 || len(paging.NextLink) == 0 {
   788  			return values, nil
   789  		}
   790  		req, err = http.NewRequest("GET", paging.NextLink, nil)
   791  		if ctx != nil {
   792  			req = req.WithContext(ctx)
   793  		}
   794  		res, err = r.client.Do(req)
   795  		if err != nil {
   796  			return nil, err
   797  		}
   798  	}
   799  }
   800  
   801  // GetN performs GET request for DeviceConfigurationState collection, max N pages
   802  func (r *ManagedDeviceDeviceConfigurationStatesCollectionRequest) GetN(ctx context.Context, n int) ([]DeviceConfigurationState, error) {
   803  	var query string
   804  	if r.query != nil {
   805  		query = "?" + r.query.Encode()
   806  	}
   807  	return r.Paging(ctx, "GET", query, nil, n)
   808  }
   809  
   810  // Get performs GET request for DeviceConfigurationState collection
   811  func (r *ManagedDeviceDeviceConfigurationStatesCollectionRequest) Get(ctx context.Context) ([]DeviceConfigurationState, error) {
   812  	return r.GetN(ctx, 0)
   813  }
   814  
   815  // Add performs POST request for DeviceConfigurationState collection
   816  func (r *ManagedDeviceDeviceConfigurationStatesCollectionRequest) Add(ctx context.Context, reqObj *DeviceConfigurationState) (resObj *DeviceConfigurationState, err error) {
   817  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
   818  	return
   819  }
   820  
   821  // ManagedDeviceMobileAppConfigurationStates returns request builder for ManagedDeviceMobileAppConfigurationState collection
   822  func (b *ManagedDeviceRequestBuilder) ManagedDeviceMobileAppConfigurationStates() *ManagedDeviceManagedDeviceMobileAppConfigurationStatesCollectionRequestBuilder {
   823  	bb := &ManagedDeviceManagedDeviceMobileAppConfigurationStatesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   824  	bb.baseURL += "/managedDeviceMobileAppConfigurationStates"
   825  	return bb
   826  }
   827  
   828  // ManagedDeviceManagedDeviceMobileAppConfigurationStatesCollectionRequestBuilder is request builder for ManagedDeviceMobileAppConfigurationState collection
   829  type ManagedDeviceManagedDeviceMobileAppConfigurationStatesCollectionRequestBuilder struct{ BaseRequestBuilder }
   830  
   831  // Request returns request for ManagedDeviceMobileAppConfigurationState collection
   832  func (b *ManagedDeviceManagedDeviceMobileAppConfigurationStatesCollectionRequestBuilder) Request() *ManagedDeviceManagedDeviceMobileAppConfigurationStatesCollectionRequest {
   833  	return &ManagedDeviceManagedDeviceMobileAppConfigurationStatesCollectionRequest{
   834  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
   835  	}
   836  }
   837  
   838  // ID returns request builder for ManagedDeviceMobileAppConfigurationState item
   839  func (b *ManagedDeviceManagedDeviceMobileAppConfigurationStatesCollectionRequestBuilder) ID(id string) *ManagedDeviceMobileAppConfigurationStateRequestBuilder {
   840  	bb := &ManagedDeviceMobileAppConfigurationStateRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   841  	bb.baseURL += "/" + id
   842  	return bb
   843  }
   844  
   845  // ManagedDeviceManagedDeviceMobileAppConfigurationStatesCollectionRequest is request for ManagedDeviceMobileAppConfigurationState collection
   846  type ManagedDeviceManagedDeviceMobileAppConfigurationStatesCollectionRequest struct{ BaseRequest }
   847  
   848  // Paging perfoms paging operation for ManagedDeviceMobileAppConfigurationState collection
   849  func (r *ManagedDeviceManagedDeviceMobileAppConfigurationStatesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]ManagedDeviceMobileAppConfigurationState, error) {
   850  	req, err := r.NewJSONRequest(method, path, obj)
   851  	if err != nil {
   852  		return nil, err
   853  	}
   854  	if ctx != nil {
   855  		req = req.WithContext(ctx)
   856  	}
   857  	res, err := r.client.Do(req)
   858  	if err != nil {
   859  		return nil, err
   860  	}
   861  	var values []ManagedDeviceMobileAppConfigurationState
   862  	for {
   863  		if res.StatusCode != http.StatusOK {
   864  			b, _ := ioutil.ReadAll(res.Body)
   865  			res.Body.Close()
   866  			errRes := &ErrorResponse{Response: res}
   867  			err := jsonx.Unmarshal(b, errRes)
   868  			if err != nil {
   869  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
   870  			}
   871  			return nil, errRes
   872  		}
   873  		var (
   874  			paging Paging
   875  			value  []ManagedDeviceMobileAppConfigurationState
   876  		)
   877  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
   878  		res.Body.Close()
   879  		if err != nil {
   880  			return nil, err
   881  		}
   882  		err = jsonx.Unmarshal(paging.Value, &value)
   883  		if err != nil {
   884  			return nil, err
   885  		}
   886  		values = append(values, value...)
   887  		if n >= 0 {
   888  			n--
   889  		}
   890  		if n == 0 || len(paging.NextLink) == 0 {
   891  			return values, nil
   892  		}
   893  		req, err = http.NewRequest("GET", paging.NextLink, nil)
   894  		if ctx != nil {
   895  			req = req.WithContext(ctx)
   896  		}
   897  		res, err = r.client.Do(req)
   898  		if err != nil {
   899  			return nil, err
   900  		}
   901  	}
   902  }
   903  
   904  // GetN performs GET request for ManagedDeviceMobileAppConfigurationState collection, max N pages
   905  func (r *ManagedDeviceManagedDeviceMobileAppConfigurationStatesCollectionRequest) GetN(ctx context.Context, n int) ([]ManagedDeviceMobileAppConfigurationState, error) {
   906  	var query string
   907  	if r.query != nil {
   908  		query = "?" + r.query.Encode()
   909  	}
   910  	return r.Paging(ctx, "GET", query, nil, n)
   911  }
   912  
   913  // Get performs GET request for ManagedDeviceMobileAppConfigurationState collection
   914  func (r *ManagedDeviceManagedDeviceMobileAppConfigurationStatesCollectionRequest) Get(ctx context.Context) ([]ManagedDeviceMobileAppConfigurationState, error) {
   915  	return r.GetN(ctx, 0)
   916  }
   917  
   918  // Add performs POST request for ManagedDeviceMobileAppConfigurationState collection
   919  func (r *ManagedDeviceManagedDeviceMobileAppConfigurationStatesCollectionRequest) Add(ctx context.Context, reqObj *ManagedDeviceMobileAppConfigurationState) (resObj *ManagedDeviceMobileAppConfigurationState, err error) {
   920  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
   921  	return
   922  }
   923  
   924  // SecurityBaselineStates returns request builder for SecurityBaselineState collection
   925  func (b *ManagedDeviceRequestBuilder) SecurityBaselineStates() *ManagedDeviceSecurityBaselineStatesCollectionRequestBuilder {
   926  	bb := &ManagedDeviceSecurityBaselineStatesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   927  	bb.baseURL += "/securityBaselineStates"
   928  	return bb
   929  }
   930  
   931  // ManagedDeviceSecurityBaselineStatesCollectionRequestBuilder is request builder for SecurityBaselineState collection
   932  type ManagedDeviceSecurityBaselineStatesCollectionRequestBuilder struct{ BaseRequestBuilder }
   933  
   934  // Request returns request for SecurityBaselineState collection
   935  func (b *ManagedDeviceSecurityBaselineStatesCollectionRequestBuilder) Request() *ManagedDeviceSecurityBaselineStatesCollectionRequest {
   936  	return &ManagedDeviceSecurityBaselineStatesCollectionRequest{
   937  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
   938  	}
   939  }
   940  
   941  // ID returns request builder for SecurityBaselineState item
   942  func (b *ManagedDeviceSecurityBaselineStatesCollectionRequestBuilder) ID(id string) *SecurityBaselineStateRequestBuilder {
   943  	bb := &SecurityBaselineStateRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   944  	bb.baseURL += "/" + id
   945  	return bb
   946  }
   947  
   948  // ManagedDeviceSecurityBaselineStatesCollectionRequest is request for SecurityBaselineState collection
   949  type ManagedDeviceSecurityBaselineStatesCollectionRequest struct{ BaseRequest }
   950  
   951  // Paging perfoms paging operation for SecurityBaselineState collection
   952  func (r *ManagedDeviceSecurityBaselineStatesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]SecurityBaselineState, error) {
   953  	req, err := r.NewJSONRequest(method, path, obj)
   954  	if err != nil {
   955  		return nil, err
   956  	}
   957  	if ctx != nil {
   958  		req = req.WithContext(ctx)
   959  	}
   960  	res, err := r.client.Do(req)
   961  	if err != nil {
   962  		return nil, err
   963  	}
   964  	var values []SecurityBaselineState
   965  	for {
   966  		if res.StatusCode != http.StatusOK {
   967  			b, _ := ioutil.ReadAll(res.Body)
   968  			res.Body.Close()
   969  			errRes := &ErrorResponse{Response: res}
   970  			err := jsonx.Unmarshal(b, errRes)
   971  			if err != nil {
   972  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
   973  			}
   974  			return nil, errRes
   975  		}
   976  		var (
   977  			paging Paging
   978  			value  []SecurityBaselineState
   979  		)
   980  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
   981  		res.Body.Close()
   982  		if err != nil {
   983  			return nil, err
   984  		}
   985  		err = jsonx.Unmarshal(paging.Value, &value)
   986  		if err != nil {
   987  			return nil, err
   988  		}
   989  		values = append(values, value...)
   990  		if n >= 0 {
   991  			n--
   992  		}
   993  		if n == 0 || len(paging.NextLink) == 0 {
   994  			return values, nil
   995  		}
   996  		req, err = http.NewRequest("GET", paging.NextLink, nil)
   997  		if ctx != nil {
   998  			req = req.WithContext(ctx)
   999  		}
  1000  		res, err = r.client.Do(req)
  1001  		if err != nil {
  1002  			return nil, err
  1003  		}
  1004  	}
  1005  }
  1006  
  1007  // GetN performs GET request for SecurityBaselineState collection, max N pages
  1008  func (r *ManagedDeviceSecurityBaselineStatesCollectionRequest) GetN(ctx context.Context, n int) ([]SecurityBaselineState, error) {
  1009  	var query string
  1010  	if r.query != nil {
  1011  		query = "?" + r.query.Encode()
  1012  	}
  1013  	return r.Paging(ctx, "GET", query, nil, n)
  1014  }
  1015  
  1016  // Get performs GET request for SecurityBaselineState collection
  1017  func (r *ManagedDeviceSecurityBaselineStatesCollectionRequest) Get(ctx context.Context) ([]SecurityBaselineState, error) {
  1018  	return r.GetN(ctx, 0)
  1019  }
  1020  
  1021  // Add performs POST request for SecurityBaselineState collection
  1022  func (r *ManagedDeviceSecurityBaselineStatesCollectionRequest) Add(ctx context.Context, reqObj *SecurityBaselineState) (resObj *SecurityBaselineState, err error) {
  1023  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
  1024  	return
  1025  }
  1026  
  1027  // Users returns request builder for User collection
  1028  func (b *ManagedDeviceRequestBuilder) Users() *ManagedDeviceUsersCollectionRequestBuilder {
  1029  	bb := &ManagedDeviceUsersCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1030  	bb.baseURL += "/users"
  1031  	return bb
  1032  }
  1033  
  1034  // ManagedDeviceUsersCollectionRequestBuilder is request builder for User collection
  1035  type ManagedDeviceUsersCollectionRequestBuilder struct{ BaseRequestBuilder }
  1036  
  1037  // Request returns request for User collection
  1038  func (b *ManagedDeviceUsersCollectionRequestBuilder) Request() *ManagedDeviceUsersCollectionRequest {
  1039  	return &ManagedDeviceUsersCollectionRequest{
  1040  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
  1041  	}
  1042  }
  1043  
  1044  // ID returns request builder for User item
  1045  func (b *ManagedDeviceUsersCollectionRequestBuilder) ID(id string) *UserRequestBuilder {
  1046  	bb := &UserRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1047  	bb.baseURL += "/" + id
  1048  	return bb
  1049  }
  1050  
  1051  // ManagedDeviceUsersCollectionRequest is request for User collection
  1052  type ManagedDeviceUsersCollectionRequest struct{ BaseRequest }
  1053  
  1054  // Paging perfoms paging operation for User collection
  1055  func (r *ManagedDeviceUsersCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]User, error) {
  1056  	req, err := r.NewJSONRequest(method, path, obj)
  1057  	if err != nil {
  1058  		return nil, err
  1059  	}
  1060  	if ctx != nil {
  1061  		req = req.WithContext(ctx)
  1062  	}
  1063  	res, err := r.client.Do(req)
  1064  	if err != nil {
  1065  		return nil, err
  1066  	}
  1067  	var values []User
  1068  	for {
  1069  		if res.StatusCode != http.StatusOK {
  1070  			b, _ := ioutil.ReadAll(res.Body)
  1071  			res.Body.Close()
  1072  			errRes := &ErrorResponse{Response: res}
  1073  			err := jsonx.Unmarshal(b, errRes)
  1074  			if err != nil {
  1075  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
  1076  			}
  1077  			return nil, errRes
  1078  		}
  1079  		var (
  1080  			paging Paging
  1081  			value  []User
  1082  		)
  1083  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
  1084  		res.Body.Close()
  1085  		if err != nil {
  1086  			return nil, err
  1087  		}
  1088  		err = jsonx.Unmarshal(paging.Value, &value)
  1089  		if err != nil {
  1090  			return nil, err
  1091  		}
  1092  		values = append(values, value...)
  1093  		if n >= 0 {
  1094  			n--
  1095  		}
  1096  		if n == 0 || len(paging.NextLink) == 0 {
  1097  			return values, nil
  1098  		}
  1099  		req, err = http.NewRequest("GET", paging.NextLink, nil)
  1100  		if ctx != nil {
  1101  			req = req.WithContext(ctx)
  1102  		}
  1103  		res, err = r.client.Do(req)
  1104  		if err != nil {
  1105  			return nil, err
  1106  		}
  1107  	}
  1108  }
  1109  
  1110  // GetN performs GET request for User collection, max N pages
  1111  func (r *ManagedDeviceUsersCollectionRequest) GetN(ctx context.Context, n int) ([]User, error) {
  1112  	var query string
  1113  	if r.query != nil {
  1114  		query = "?" + r.query.Encode()
  1115  	}
  1116  	return r.Paging(ctx, "GET", query, nil, n)
  1117  }
  1118  
  1119  // Get performs GET request for User collection
  1120  func (r *ManagedDeviceUsersCollectionRequest) Get(ctx context.Context) ([]User, error) {
  1121  	return r.GetN(ctx, 0)
  1122  }
  1123  
  1124  // Add performs POST request for User collection
  1125  func (r *ManagedDeviceUsersCollectionRequest) Add(ctx context.Context, reqObj *User) (resObj *User, err error) {
  1126  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
  1127  	return
  1128  }
  1129  
  1130  // WindowsProtectionState is navigation property
  1131  func (b *ManagedDeviceRequestBuilder) WindowsProtectionState() *WindowsProtectionStateRequestBuilder {
  1132  	bb := &WindowsProtectionStateRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1133  	bb.baseURL += "/windowsProtectionState"
  1134  	return bb
  1135  }
  1136  
  1137  // Assignments returns request builder for ManagedDeviceMobileAppConfigurationAssignment collection
  1138  func (b *ManagedDeviceMobileAppConfigurationRequestBuilder) Assignments() *ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequestBuilder {
  1139  	bb := &ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1140  	bb.baseURL += "/assignments"
  1141  	return bb
  1142  }
  1143  
  1144  // ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequestBuilder is request builder for ManagedDeviceMobileAppConfigurationAssignment collection
  1145  type ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequestBuilder struct{ BaseRequestBuilder }
  1146  
  1147  // Request returns request for ManagedDeviceMobileAppConfigurationAssignment collection
  1148  func (b *ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequestBuilder) Request() *ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequest {
  1149  	return &ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequest{
  1150  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
  1151  	}
  1152  }
  1153  
  1154  // ID returns request builder for ManagedDeviceMobileAppConfigurationAssignment item
  1155  func (b *ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequestBuilder) ID(id string) *ManagedDeviceMobileAppConfigurationAssignmentRequestBuilder {
  1156  	bb := &ManagedDeviceMobileAppConfigurationAssignmentRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1157  	bb.baseURL += "/" + id
  1158  	return bb
  1159  }
  1160  
  1161  // ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequest is request for ManagedDeviceMobileAppConfigurationAssignment collection
  1162  type ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequest struct{ BaseRequest }
  1163  
  1164  // Paging perfoms paging operation for ManagedDeviceMobileAppConfigurationAssignment collection
  1165  func (r *ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]ManagedDeviceMobileAppConfigurationAssignment, error) {
  1166  	req, err := r.NewJSONRequest(method, path, obj)
  1167  	if err != nil {
  1168  		return nil, err
  1169  	}
  1170  	if ctx != nil {
  1171  		req = req.WithContext(ctx)
  1172  	}
  1173  	res, err := r.client.Do(req)
  1174  	if err != nil {
  1175  		return nil, err
  1176  	}
  1177  	var values []ManagedDeviceMobileAppConfigurationAssignment
  1178  	for {
  1179  		if res.StatusCode != http.StatusOK {
  1180  			b, _ := ioutil.ReadAll(res.Body)
  1181  			res.Body.Close()
  1182  			errRes := &ErrorResponse{Response: res}
  1183  			err := jsonx.Unmarshal(b, errRes)
  1184  			if err != nil {
  1185  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
  1186  			}
  1187  			return nil, errRes
  1188  		}
  1189  		var (
  1190  			paging Paging
  1191  			value  []ManagedDeviceMobileAppConfigurationAssignment
  1192  		)
  1193  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
  1194  		res.Body.Close()
  1195  		if err != nil {
  1196  			return nil, err
  1197  		}
  1198  		err = jsonx.Unmarshal(paging.Value, &value)
  1199  		if err != nil {
  1200  			return nil, err
  1201  		}
  1202  		values = append(values, value...)
  1203  		if n >= 0 {
  1204  			n--
  1205  		}
  1206  		if n == 0 || len(paging.NextLink) == 0 {
  1207  			return values, nil
  1208  		}
  1209  		req, err = http.NewRequest("GET", paging.NextLink, nil)
  1210  		if ctx != nil {
  1211  			req = req.WithContext(ctx)
  1212  		}
  1213  		res, err = r.client.Do(req)
  1214  		if err != nil {
  1215  			return nil, err
  1216  		}
  1217  	}
  1218  }
  1219  
  1220  // GetN performs GET request for ManagedDeviceMobileAppConfigurationAssignment collection, max N pages
  1221  func (r *ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequest) GetN(ctx context.Context, n int) ([]ManagedDeviceMobileAppConfigurationAssignment, error) {
  1222  	var query string
  1223  	if r.query != nil {
  1224  		query = "?" + r.query.Encode()
  1225  	}
  1226  	return r.Paging(ctx, "GET", query, nil, n)
  1227  }
  1228  
  1229  // Get performs GET request for ManagedDeviceMobileAppConfigurationAssignment collection
  1230  func (r *ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequest) Get(ctx context.Context) ([]ManagedDeviceMobileAppConfigurationAssignment, error) {
  1231  	return r.GetN(ctx, 0)
  1232  }
  1233  
  1234  // Add performs POST request for ManagedDeviceMobileAppConfigurationAssignment collection
  1235  func (r *ManagedDeviceMobileAppConfigurationAssignmentsCollectionRequest) Add(ctx context.Context, reqObj *ManagedDeviceMobileAppConfigurationAssignment) (resObj *ManagedDeviceMobileAppConfigurationAssignment, err error) {
  1236  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
  1237  	return
  1238  }
  1239  
  1240  // DeviceStatusSummary is navigation property
  1241  func (b *ManagedDeviceMobileAppConfigurationRequestBuilder) DeviceStatusSummary() *ManagedDeviceMobileAppConfigurationDeviceSummaryRequestBuilder {
  1242  	bb := &ManagedDeviceMobileAppConfigurationDeviceSummaryRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1243  	bb.baseURL += "/deviceStatusSummary"
  1244  	return bb
  1245  }
  1246  
  1247  // DeviceStatuses returns request builder for ManagedDeviceMobileAppConfigurationDeviceStatus collection
  1248  func (b *ManagedDeviceMobileAppConfigurationRequestBuilder) DeviceStatuses() *ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequestBuilder {
  1249  	bb := &ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1250  	bb.baseURL += "/deviceStatuses"
  1251  	return bb
  1252  }
  1253  
  1254  // ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequestBuilder is request builder for ManagedDeviceMobileAppConfigurationDeviceStatus collection
  1255  type ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequestBuilder struct{ BaseRequestBuilder }
  1256  
  1257  // Request returns request for ManagedDeviceMobileAppConfigurationDeviceStatus collection
  1258  func (b *ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequestBuilder) Request() *ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequest {
  1259  	return &ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequest{
  1260  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
  1261  	}
  1262  }
  1263  
  1264  // ID returns request builder for ManagedDeviceMobileAppConfigurationDeviceStatus item
  1265  func (b *ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequestBuilder) ID(id string) *ManagedDeviceMobileAppConfigurationDeviceStatusRequestBuilder {
  1266  	bb := &ManagedDeviceMobileAppConfigurationDeviceStatusRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1267  	bb.baseURL += "/" + id
  1268  	return bb
  1269  }
  1270  
  1271  // ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequest is request for ManagedDeviceMobileAppConfigurationDeviceStatus collection
  1272  type ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequest struct{ BaseRequest }
  1273  
  1274  // Paging perfoms paging operation for ManagedDeviceMobileAppConfigurationDeviceStatus collection
  1275  func (r *ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]ManagedDeviceMobileAppConfigurationDeviceStatus, error) {
  1276  	req, err := r.NewJSONRequest(method, path, obj)
  1277  	if err != nil {
  1278  		return nil, err
  1279  	}
  1280  	if ctx != nil {
  1281  		req = req.WithContext(ctx)
  1282  	}
  1283  	res, err := r.client.Do(req)
  1284  	if err != nil {
  1285  		return nil, err
  1286  	}
  1287  	var values []ManagedDeviceMobileAppConfigurationDeviceStatus
  1288  	for {
  1289  		if res.StatusCode != http.StatusOK {
  1290  			b, _ := ioutil.ReadAll(res.Body)
  1291  			res.Body.Close()
  1292  			errRes := &ErrorResponse{Response: res}
  1293  			err := jsonx.Unmarshal(b, errRes)
  1294  			if err != nil {
  1295  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
  1296  			}
  1297  			return nil, errRes
  1298  		}
  1299  		var (
  1300  			paging Paging
  1301  			value  []ManagedDeviceMobileAppConfigurationDeviceStatus
  1302  		)
  1303  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
  1304  		res.Body.Close()
  1305  		if err != nil {
  1306  			return nil, err
  1307  		}
  1308  		err = jsonx.Unmarshal(paging.Value, &value)
  1309  		if err != nil {
  1310  			return nil, err
  1311  		}
  1312  		values = append(values, value...)
  1313  		if n >= 0 {
  1314  			n--
  1315  		}
  1316  		if n == 0 || len(paging.NextLink) == 0 {
  1317  			return values, nil
  1318  		}
  1319  		req, err = http.NewRequest("GET", paging.NextLink, nil)
  1320  		if ctx != nil {
  1321  			req = req.WithContext(ctx)
  1322  		}
  1323  		res, err = r.client.Do(req)
  1324  		if err != nil {
  1325  			return nil, err
  1326  		}
  1327  	}
  1328  }
  1329  
  1330  // GetN performs GET request for ManagedDeviceMobileAppConfigurationDeviceStatus collection, max N pages
  1331  func (r *ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequest) GetN(ctx context.Context, n int) ([]ManagedDeviceMobileAppConfigurationDeviceStatus, error) {
  1332  	var query string
  1333  	if r.query != nil {
  1334  		query = "?" + r.query.Encode()
  1335  	}
  1336  	return r.Paging(ctx, "GET", query, nil, n)
  1337  }
  1338  
  1339  // Get performs GET request for ManagedDeviceMobileAppConfigurationDeviceStatus collection
  1340  func (r *ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequest) Get(ctx context.Context) ([]ManagedDeviceMobileAppConfigurationDeviceStatus, error) {
  1341  	return r.GetN(ctx, 0)
  1342  }
  1343  
  1344  // Add performs POST request for ManagedDeviceMobileAppConfigurationDeviceStatus collection
  1345  func (r *ManagedDeviceMobileAppConfigurationDeviceStatusesCollectionRequest) Add(ctx context.Context, reqObj *ManagedDeviceMobileAppConfigurationDeviceStatus) (resObj *ManagedDeviceMobileAppConfigurationDeviceStatus, err error) {
  1346  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
  1347  	return
  1348  }
  1349  
  1350  // UserStatusSummary is navigation property
  1351  func (b *ManagedDeviceMobileAppConfigurationRequestBuilder) UserStatusSummary() *ManagedDeviceMobileAppConfigurationUserSummaryRequestBuilder {
  1352  	bb := &ManagedDeviceMobileAppConfigurationUserSummaryRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1353  	bb.baseURL += "/userStatusSummary"
  1354  	return bb
  1355  }
  1356  
  1357  // UserStatuses returns request builder for ManagedDeviceMobileAppConfigurationUserStatus collection
  1358  func (b *ManagedDeviceMobileAppConfigurationRequestBuilder) UserStatuses() *ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequestBuilder {
  1359  	bb := &ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1360  	bb.baseURL += "/userStatuses"
  1361  	return bb
  1362  }
  1363  
  1364  // ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequestBuilder is request builder for ManagedDeviceMobileAppConfigurationUserStatus collection
  1365  type ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequestBuilder struct{ BaseRequestBuilder }
  1366  
  1367  // Request returns request for ManagedDeviceMobileAppConfigurationUserStatus collection
  1368  func (b *ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequestBuilder) Request() *ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequest {
  1369  	return &ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequest{
  1370  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
  1371  	}
  1372  }
  1373  
  1374  // ID returns request builder for ManagedDeviceMobileAppConfigurationUserStatus item
  1375  func (b *ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequestBuilder) ID(id string) *ManagedDeviceMobileAppConfigurationUserStatusRequestBuilder {
  1376  	bb := &ManagedDeviceMobileAppConfigurationUserStatusRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1377  	bb.baseURL += "/" + id
  1378  	return bb
  1379  }
  1380  
  1381  // ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequest is request for ManagedDeviceMobileAppConfigurationUserStatus collection
  1382  type ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequest struct{ BaseRequest }
  1383  
  1384  // Paging perfoms paging operation for ManagedDeviceMobileAppConfigurationUserStatus collection
  1385  func (r *ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]ManagedDeviceMobileAppConfigurationUserStatus, error) {
  1386  	req, err := r.NewJSONRequest(method, path, obj)
  1387  	if err != nil {
  1388  		return nil, err
  1389  	}
  1390  	if ctx != nil {
  1391  		req = req.WithContext(ctx)
  1392  	}
  1393  	res, err := r.client.Do(req)
  1394  	if err != nil {
  1395  		return nil, err
  1396  	}
  1397  	var values []ManagedDeviceMobileAppConfigurationUserStatus
  1398  	for {
  1399  		if res.StatusCode != http.StatusOK {
  1400  			b, _ := ioutil.ReadAll(res.Body)
  1401  			res.Body.Close()
  1402  			errRes := &ErrorResponse{Response: res}
  1403  			err := jsonx.Unmarshal(b, errRes)
  1404  			if err != nil {
  1405  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
  1406  			}
  1407  			return nil, errRes
  1408  		}
  1409  		var (
  1410  			paging Paging
  1411  			value  []ManagedDeviceMobileAppConfigurationUserStatus
  1412  		)
  1413  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
  1414  		res.Body.Close()
  1415  		if err != nil {
  1416  			return nil, err
  1417  		}
  1418  		err = jsonx.Unmarshal(paging.Value, &value)
  1419  		if err != nil {
  1420  			return nil, err
  1421  		}
  1422  		values = append(values, value...)
  1423  		if n >= 0 {
  1424  			n--
  1425  		}
  1426  		if n == 0 || len(paging.NextLink) == 0 {
  1427  			return values, nil
  1428  		}
  1429  		req, err = http.NewRequest("GET", paging.NextLink, nil)
  1430  		if ctx != nil {
  1431  			req = req.WithContext(ctx)
  1432  		}
  1433  		res, err = r.client.Do(req)
  1434  		if err != nil {
  1435  			return nil, err
  1436  		}
  1437  	}
  1438  }
  1439  
  1440  // GetN performs GET request for ManagedDeviceMobileAppConfigurationUserStatus collection, max N pages
  1441  func (r *ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequest) GetN(ctx context.Context, n int) ([]ManagedDeviceMobileAppConfigurationUserStatus, error) {
  1442  	var query string
  1443  	if r.query != nil {
  1444  		query = "?" + r.query.Encode()
  1445  	}
  1446  	return r.Paging(ctx, "GET", query, nil, n)
  1447  }
  1448  
  1449  // Get performs GET request for ManagedDeviceMobileAppConfigurationUserStatus collection
  1450  func (r *ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequest) Get(ctx context.Context) ([]ManagedDeviceMobileAppConfigurationUserStatus, error) {
  1451  	return r.GetN(ctx, 0)
  1452  }
  1453  
  1454  // Add performs POST request for ManagedDeviceMobileAppConfigurationUserStatus collection
  1455  func (r *ManagedDeviceMobileAppConfigurationUserStatusesCollectionRequest) Add(ctx context.Context, reqObj *ManagedDeviceMobileAppConfigurationUserStatus) (resObj *ManagedDeviceMobileAppConfigurationUserStatus, err error) {
  1456  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
  1457  	return
  1458  }
  1459  
  1460  // Assignments returns request builder for ManagedEBookAssignment collection
  1461  func (b *ManagedEBookRequestBuilder) Assignments() *ManagedEBookAssignmentsCollectionRequestBuilder {
  1462  	bb := &ManagedEBookAssignmentsCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1463  	bb.baseURL += "/assignments"
  1464  	return bb
  1465  }
  1466  
  1467  // ManagedEBookAssignmentsCollectionRequestBuilder is request builder for ManagedEBookAssignment collection
  1468  type ManagedEBookAssignmentsCollectionRequestBuilder struct{ BaseRequestBuilder }
  1469  
  1470  // Request returns request for ManagedEBookAssignment collection
  1471  func (b *ManagedEBookAssignmentsCollectionRequestBuilder) Request() *ManagedEBookAssignmentsCollectionRequest {
  1472  	return &ManagedEBookAssignmentsCollectionRequest{
  1473  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
  1474  	}
  1475  }
  1476  
  1477  // ID returns request builder for ManagedEBookAssignment item
  1478  func (b *ManagedEBookAssignmentsCollectionRequestBuilder) ID(id string) *ManagedEBookAssignmentRequestBuilder {
  1479  	bb := &ManagedEBookAssignmentRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1480  	bb.baseURL += "/" + id
  1481  	return bb
  1482  }
  1483  
  1484  // ManagedEBookAssignmentsCollectionRequest is request for ManagedEBookAssignment collection
  1485  type ManagedEBookAssignmentsCollectionRequest struct{ BaseRequest }
  1486  
  1487  // Paging perfoms paging operation for ManagedEBookAssignment collection
  1488  func (r *ManagedEBookAssignmentsCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]ManagedEBookAssignment, error) {
  1489  	req, err := r.NewJSONRequest(method, path, obj)
  1490  	if err != nil {
  1491  		return nil, err
  1492  	}
  1493  	if ctx != nil {
  1494  		req = req.WithContext(ctx)
  1495  	}
  1496  	res, err := r.client.Do(req)
  1497  	if err != nil {
  1498  		return nil, err
  1499  	}
  1500  	var values []ManagedEBookAssignment
  1501  	for {
  1502  		if res.StatusCode != http.StatusOK {
  1503  			b, _ := ioutil.ReadAll(res.Body)
  1504  			res.Body.Close()
  1505  			errRes := &ErrorResponse{Response: res}
  1506  			err := jsonx.Unmarshal(b, errRes)
  1507  			if err != nil {
  1508  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
  1509  			}
  1510  			return nil, errRes
  1511  		}
  1512  		var (
  1513  			paging Paging
  1514  			value  []ManagedEBookAssignment
  1515  		)
  1516  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
  1517  		res.Body.Close()
  1518  		if err != nil {
  1519  			return nil, err
  1520  		}
  1521  		err = jsonx.Unmarshal(paging.Value, &value)
  1522  		if err != nil {
  1523  			return nil, err
  1524  		}
  1525  		values = append(values, value...)
  1526  		if n >= 0 {
  1527  			n--
  1528  		}
  1529  		if n == 0 || len(paging.NextLink) == 0 {
  1530  			return values, nil
  1531  		}
  1532  		req, err = http.NewRequest("GET", paging.NextLink, nil)
  1533  		if ctx != nil {
  1534  			req = req.WithContext(ctx)
  1535  		}
  1536  		res, err = r.client.Do(req)
  1537  		if err != nil {
  1538  			return nil, err
  1539  		}
  1540  	}
  1541  }
  1542  
  1543  // GetN performs GET request for ManagedEBookAssignment collection, max N pages
  1544  func (r *ManagedEBookAssignmentsCollectionRequest) GetN(ctx context.Context, n int) ([]ManagedEBookAssignment, error) {
  1545  	var query string
  1546  	if r.query != nil {
  1547  		query = "?" + r.query.Encode()
  1548  	}
  1549  	return r.Paging(ctx, "GET", query, nil, n)
  1550  }
  1551  
  1552  // Get performs GET request for ManagedEBookAssignment collection
  1553  func (r *ManagedEBookAssignmentsCollectionRequest) Get(ctx context.Context) ([]ManagedEBookAssignment, error) {
  1554  	return r.GetN(ctx, 0)
  1555  }
  1556  
  1557  // Add performs POST request for ManagedEBookAssignment collection
  1558  func (r *ManagedEBookAssignmentsCollectionRequest) Add(ctx context.Context, reqObj *ManagedEBookAssignment) (resObj *ManagedEBookAssignment, err error) {
  1559  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
  1560  	return
  1561  }
  1562  
  1563  // Categories returns request builder for ManagedEBookCategory collection
  1564  func (b *ManagedEBookRequestBuilder) Categories() *ManagedEBookCategoriesCollectionRequestBuilder {
  1565  	bb := &ManagedEBookCategoriesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1566  	bb.baseURL += "/categories"
  1567  	return bb
  1568  }
  1569  
  1570  // ManagedEBookCategoriesCollectionRequestBuilder is request builder for ManagedEBookCategory collection
  1571  type ManagedEBookCategoriesCollectionRequestBuilder struct{ BaseRequestBuilder }
  1572  
  1573  // Request returns request for ManagedEBookCategory collection
  1574  func (b *ManagedEBookCategoriesCollectionRequestBuilder) Request() *ManagedEBookCategoriesCollectionRequest {
  1575  	return &ManagedEBookCategoriesCollectionRequest{
  1576  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
  1577  	}
  1578  }
  1579  
  1580  // ID returns request builder for ManagedEBookCategory item
  1581  func (b *ManagedEBookCategoriesCollectionRequestBuilder) ID(id string) *ManagedEBookCategoryRequestBuilder {
  1582  	bb := &ManagedEBookCategoryRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1583  	bb.baseURL += "/" + id
  1584  	return bb
  1585  }
  1586  
  1587  // ManagedEBookCategoriesCollectionRequest is request for ManagedEBookCategory collection
  1588  type ManagedEBookCategoriesCollectionRequest struct{ BaseRequest }
  1589  
  1590  // Paging perfoms paging operation for ManagedEBookCategory collection
  1591  func (r *ManagedEBookCategoriesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]ManagedEBookCategory, error) {
  1592  	req, err := r.NewJSONRequest(method, path, obj)
  1593  	if err != nil {
  1594  		return nil, err
  1595  	}
  1596  	if ctx != nil {
  1597  		req = req.WithContext(ctx)
  1598  	}
  1599  	res, err := r.client.Do(req)
  1600  	if err != nil {
  1601  		return nil, err
  1602  	}
  1603  	var values []ManagedEBookCategory
  1604  	for {
  1605  		if res.StatusCode != http.StatusOK {
  1606  			b, _ := ioutil.ReadAll(res.Body)
  1607  			res.Body.Close()
  1608  			errRes := &ErrorResponse{Response: res}
  1609  			err := jsonx.Unmarshal(b, errRes)
  1610  			if err != nil {
  1611  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
  1612  			}
  1613  			return nil, errRes
  1614  		}
  1615  		var (
  1616  			paging Paging
  1617  			value  []ManagedEBookCategory
  1618  		)
  1619  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
  1620  		res.Body.Close()
  1621  		if err != nil {
  1622  			return nil, err
  1623  		}
  1624  		err = jsonx.Unmarshal(paging.Value, &value)
  1625  		if err != nil {
  1626  			return nil, err
  1627  		}
  1628  		values = append(values, value...)
  1629  		if n >= 0 {
  1630  			n--
  1631  		}
  1632  		if n == 0 || len(paging.NextLink) == 0 {
  1633  			return values, nil
  1634  		}
  1635  		req, err = http.NewRequest("GET", paging.NextLink, nil)
  1636  		if ctx != nil {
  1637  			req = req.WithContext(ctx)
  1638  		}
  1639  		res, err = r.client.Do(req)
  1640  		if err != nil {
  1641  			return nil, err
  1642  		}
  1643  	}
  1644  }
  1645  
  1646  // GetN performs GET request for ManagedEBookCategory collection, max N pages
  1647  func (r *ManagedEBookCategoriesCollectionRequest) GetN(ctx context.Context, n int) ([]ManagedEBookCategory, error) {
  1648  	var query string
  1649  	if r.query != nil {
  1650  		query = "?" + r.query.Encode()
  1651  	}
  1652  	return r.Paging(ctx, "GET", query, nil, n)
  1653  }
  1654  
  1655  // Get performs GET request for ManagedEBookCategory collection
  1656  func (r *ManagedEBookCategoriesCollectionRequest) Get(ctx context.Context) ([]ManagedEBookCategory, error) {
  1657  	return r.GetN(ctx, 0)
  1658  }
  1659  
  1660  // Add performs POST request for ManagedEBookCategory collection
  1661  func (r *ManagedEBookCategoriesCollectionRequest) Add(ctx context.Context, reqObj *ManagedEBookCategory) (resObj *ManagedEBookCategory, err error) {
  1662  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
  1663  	return
  1664  }
  1665  
  1666  // DeviceStates returns request builder for DeviceInstallState collection
  1667  func (b *ManagedEBookRequestBuilder) DeviceStates() *ManagedEBookDeviceStatesCollectionRequestBuilder {
  1668  	bb := &ManagedEBookDeviceStatesCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1669  	bb.baseURL += "/deviceStates"
  1670  	return bb
  1671  }
  1672  
  1673  // ManagedEBookDeviceStatesCollectionRequestBuilder is request builder for DeviceInstallState collection
  1674  type ManagedEBookDeviceStatesCollectionRequestBuilder struct{ BaseRequestBuilder }
  1675  
  1676  // Request returns request for DeviceInstallState collection
  1677  func (b *ManagedEBookDeviceStatesCollectionRequestBuilder) Request() *ManagedEBookDeviceStatesCollectionRequest {
  1678  	return &ManagedEBookDeviceStatesCollectionRequest{
  1679  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
  1680  	}
  1681  }
  1682  
  1683  // ID returns request builder for DeviceInstallState item
  1684  func (b *ManagedEBookDeviceStatesCollectionRequestBuilder) ID(id string) *DeviceInstallStateRequestBuilder {
  1685  	bb := &DeviceInstallStateRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1686  	bb.baseURL += "/" + id
  1687  	return bb
  1688  }
  1689  
  1690  // ManagedEBookDeviceStatesCollectionRequest is request for DeviceInstallState collection
  1691  type ManagedEBookDeviceStatesCollectionRequest struct{ BaseRequest }
  1692  
  1693  // Paging perfoms paging operation for DeviceInstallState collection
  1694  func (r *ManagedEBookDeviceStatesCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]DeviceInstallState, error) {
  1695  	req, err := r.NewJSONRequest(method, path, obj)
  1696  	if err != nil {
  1697  		return nil, err
  1698  	}
  1699  	if ctx != nil {
  1700  		req = req.WithContext(ctx)
  1701  	}
  1702  	res, err := r.client.Do(req)
  1703  	if err != nil {
  1704  		return nil, err
  1705  	}
  1706  	var values []DeviceInstallState
  1707  	for {
  1708  		if res.StatusCode != http.StatusOK {
  1709  			b, _ := ioutil.ReadAll(res.Body)
  1710  			res.Body.Close()
  1711  			errRes := &ErrorResponse{Response: res}
  1712  			err := jsonx.Unmarshal(b, errRes)
  1713  			if err != nil {
  1714  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
  1715  			}
  1716  			return nil, errRes
  1717  		}
  1718  		var (
  1719  			paging Paging
  1720  			value  []DeviceInstallState
  1721  		)
  1722  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
  1723  		res.Body.Close()
  1724  		if err != nil {
  1725  			return nil, err
  1726  		}
  1727  		err = jsonx.Unmarshal(paging.Value, &value)
  1728  		if err != nil {
  1729  			return nil, err
  1730  		}
  1731  		values = append(values, value...)
  1732  		if n >= 0 {
  1733  			n--
  1734  		}
  1735  		if n == 0 || len(paging.NextLink) == 0 {
  1736  			return values, nil
  1737  		}
  1738  		req, err = http.NewRequest("GET", paging.NextLink, nil)
  1739  		if ctx != nil {
  1740  			req = req.WithContext(ctx)
  1741  		}
  1742  		res, err = r.client.Do(req)
  1743  		if err != nil {
  1744  			return nil, err
  1745  		}
  1746  	}
  1747  }
  1748  
  1749  // GetN performs GET request for DeviceInstallState collection, max N pages
  1750  func (r *ManagedEBookDeviceStatesCollectionRequest) GetN(ctx context.Context, n int) ([]DeviceInstallState, error) {
  1751  	var query string
  1752  	if r.query != nil {
  1753  		query = "?" + r.query.Encode()
  1754  	}
  1755  	return r.Paging(ctx, "GET", query, nil, n)
  1756  }
  1757  
  1758  // Get performs GET request for DeviceInstallState collection
  1759  func (r *ManagedEBookDeviceStatesCollectionRequest) Get(ctx context.Context) ([]DeviceInstallState, error) {
  1760  	return r.GetN(ctx, 0)
  1761  }
  1762  
  1763  // Add performs POST request for DeviceInstallState collection
  1764  func (r *ManagedEBookDeviceStatesCollectionRequest) Add(ctx context.Context, reqObj *DeviceInstallState) (resObj *DeviceInstallState, err error) {
  1765  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
  1766  	return
  1767  }
  1768  
  1769  // InstallSummary is navigation property
  1770  func (b *ManagedEBookRequestBuilder) InstallSummary() *EBookInstallSummaryRequestBuilder {
  1771  	bb := &EBookInstallSummaryRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1772  	bb.baseURL += "/installSummary"
  1773  	return bb
  1774  }
  1775  
  1776  // UserStateSummary returns request builder for UserInstallStateSummary collection
  1777  func (b *ManagedEBookRequestBuilder) UserStateSummary() *ManagedEBookUserStateSummaryCollectionRequestBuilder {
  1778  	bb := &ManagedEBookUserStateSummaryCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1779  	bb.baseURL += "/userStateSummary"
  1780  	return bb
  1781  }
  1782  
  1783  // ManagedEBookUserStateSummaryCollectionRequestBuilder is request builder for UserInstallStateSummary collection
  1784  type ManagedEBookUserStateSummaryCollectionRequestBuilder struct{ BaseRequestBuilder }
  1785  
  1786  // Request returns request for UserInstallStateSummary collection
  1787  func (b *ManagedEBookUserStateSummaryCollectionRequestBuilder) Request() *ManagedEBookUserStateSummaryCollectionRequest {
  1788  	return &ManagedEBookUserStateSummaryCollectionRequest{
  1789  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
  1790  	}
  1791  }
  1792  
  1793  // ID returns request builder for UserInstallStateSummary item
  1794  func (b *ManagedEBookUserStateSummaryCollectionRequestBuilder) ID(id string) *UserInstallStateSummaryRequestBuilder {
  1795  	bb := &UserInstallStateSummaryRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1796  	bb.baseURL += "/" + id
  1797  	return bb
  1798  }
  1799  
  1800  // ManagedEBookUserStateSummaryCollectionRequest is request for UserInstallStateSummary collection
  1801  type ManagedEBookUserStateSummaryCollectionRequest struct{ BaseRequest }
  1802  
  1803  // Paging perfoms paging operation for UserInstallStateSummary collection
  1804  func (r *ManagedEBookUserStateSummaryCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]UserInstallStateSummary, error) {
  1805  	req, err := r.NewJSONRequest(method, path, obj)
  1806  	if err != nil {
  1807  		return nil, err
  1808  	}
  1809  	if ctx != nil {
  1810  		req = req.WithContext(ctx)
  1811  	}
  1812  	res, err := r.client.Do(req)
  1813  	if err != nil {
  1814  		return nil, err
  1815  	}
  1816  	var values []UserInstallStateSummary
  1817  	for {
  1818  		if res.StatusCode != http.StatusOK {
  1819  			b, _ := ioutil.ReadAll(res.Body)
  1820  			res.Body.Close()
  1821  			errRes := &ErrorResponse{Response: res}
  1822  			err := jsonx.Unmarshal(b, errRes)
  1823  			if err != nil {
  1824  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
  1825  			}
  1826  			return nil, errRes
  1827  		}
  1828  		var (
  1829  			paging Paging
  1830  			value  []UserInstallStateSummary
  1831  		)
  1832  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
  1833  		res.Body.Close()
  1834  		if err != nil {
  1835  			return nil, err
  1836  		}
  1837  		err = jsonx.Unmarshal(paging.Value, &value)
  1838  		if err != nil {
  1839  			return nil, err
  1840  		}
  1841  		values = append(values, value...)
  1842  		if n >= 0 {
  1843  			n--
  1844  		}
  1845  		if n == 0 || len(paging.NextLink) == 0 {
  1846  			return values, nil
  1847  		}
  1848  		req, err = http.NewRequest("GET", paging.NextLink, nil)
  1849  		if ctx != nil {
  1850  			req = req.WithContext(ctx)
  1851  		}
  1852  		res, err = r.client.Do(req)
  1853  		if err != nil {
  1854  			return nil, err
  1855  		}
  1856  	}
  1857  }
  1858  
  1859  // GetN performs GET request for UserInstallStateSummary collection, max N pages
  1860  func (r *ManagedEBookUserStateSummaryCollectionRequest) GetN(ctx context.Context, n int) ([]UserInstallStateSummary, error) {
  1861  	var query string
  1862  	if r.query != nil {
  1863  		query = "?" + r.query.Encode()
  1864  	}
  1865  	return r.Paging(ctx, "GET", query, nil, n)
  1866  }
  1867  
  1868  // Get performs GET request for UserInstallStateSummary collection
  1869  func (r *ManagedEBookUserStateSummaryCollectionRequest) Get(ctx context.Context) ([]UserInstallStateSummary, error) {
  1870  	return r.GetN(ctx, 0)
  1871  }
  1872  
  1873  // Add performs POST request for UserInstallStateSummary collection
  1874  func (r *ManagedEBookUserStateSummaryCollectionRequest) Add(ctx context.Context, reqObj *UserInstallStateSummary) (resObj *UserInstallStateSummary, err error) {
  1875  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
  1876  	return
  1877  }
  1878  
  1879  // ContentVersions returns request builder for MobileAppContent collection
  1880  func (b *ManagedMobileLobAppRequestBuilder) ContentVersions() *ManagedMobileLobAppContentVersionsCollectionRequestBuilder {
  1881  	bb := &ManagedMobileLobAppContentVersionsCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1882  	bb.baseURL += "/contentVersions"
  1883  	return bb
  1884  }
  1885  
  1886  // ManagedMobileLobAppContentVersionsCollectionRequestBuilder is request builder for MobileAppContent collection
  1887  type ManagedMobileLobAppContentVersionsCollectionRequestBuilder struct{ BaseRequestBuilder }
  1888  
  1889  // Request returns request for MobileAppContent collection
  1890  func (b *ManagedMobileLobAppContentVersionsCollectionRequestBuilder) Request() *ManagedMobileLobAppContentVersionsCollectionRequest {
  1891  	return &ManagedMobileLobAppContentVersionsCollectionRequest{
  1892  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
  1893  	}
  1894  }
  1895  
  1896  // ID returns request builder for MobileAppContent item
  1897  func (b *ManagedMobileLobAppContentVersionsCollectionRequestBuilder) ID(id string) *MobileAppContentRequestBuilder {
  1898  	bb := &MobileAppContentRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
  1899  	bb.baseURL += "/" + id
  1900  	return bb
  1901  }
  1902  
  1903  // ManagedMobileLobAppContentVersionsCollectionRequest is request for MobileAppContent collection
  1904  type ManagedMobileLobAppContentVersionsCollectionRequest struct{ BaseRequest }
  1905  
  1906  // Paging perfoms paging operation for MobileAppContent collection
  1907  func (r *ManagedMobileLobAppContentVersionsCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]MobileAppContent, error) {
  1908  	req, err := r.NewJSONRequest(method, path, obj)
  1909  	if err != nil {
  1910  		return nil, err
  1911  	}
  1912  	if ctx != nil {
  1913  		req = req.WithContext(ctx)
  1914  	}
  1915  	res, err := r.client.Do(req)
  1916  	if err != nil {
  1917  		return nil, err
  1918  	}
  1919  	var values []MobileAppContent
  1920  	for {
  1921  		if res.StatusCode != http.StatusOK {
  1922  			b, _ := ioutil.ReadAll(res.Body)
  1923  			res.Body.Close()
  1924  			errRes := &ErrorResponse{Response: res}
  1925  			err := jsonx.Unmarshal(b, errRes)
  1926  			if err != nil {
  1927  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
  1928  			}
  1929  			return nil, errRes
  1930  		}
  1931  		var (
  1932  			paging Paging
  1933  			value  []MobileAppContent
  1934  		)
  1935  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
  1936  		res.Body.Close()
  1937  		if err != nil {
  1938  			return nil, err
  1939  		}
  1940  		err = jsonx.Unmarshal(paging.Value, &value)
  1941  		if err != nil {
  1942  			return nil, err
  1943  		}
  1944  		values = append(values, value...)
  1945  		if n >= 0 {
  1946  			n--
  1947  		}
  1948  		if n == 0 || len(paging.NextLink) == 0 {
  1949  			return values, nil
  1950  		}
  1951  		req, err = http.NewRequest("GET", paging.NextLink, nil)
  1952  		if ctx != nil {
  1953  			req = req.WithContext(ctx)
  1954  		}
  1955  		res, err = r.client.Do(req)
  1956  		if err != nil {
  1957  			return nil, err
  1958  		}
  1959  	}
  1960  }
  1961  
  1962  // GetN performs GET request for MobileAppContent collection, max N pages
  1963  func (r *ManagedMobileLobAppContentVersionsCollectionRequest) GetN(ctx context.Context, n int) ([]MobileAppContent, error) {
  1964  	var query string
  1965  	if r.query != nil {
  1966  		query = "?" + r.query.Encode()
  1967  	}
  1968  	return r.Paging(ctx, "GET", query, nil, n)
  1969  }
  1970  
  1971  // Get performs GET request for MobileAppContent collection
  1972  func (r *ManagedMobileLobAppContentVersionsCollectionRequest) Get(ctx context.Context) ([]MobileAppContent, error) {
  1973  	return r.GetN(ctx, 0)
  1974  }
  1975  
  1976  // Add performs POST request for MobileAppContent collection
  1977  func (r *ManagedMobileLobAppContentVersionsCollectionRequest) Add(ctx context.Context, reqObj *MobileAppContent) (resObj *MobileAppContent, err error) {
  1978  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
  1979  	return
  1980  }