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