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