github.com/yaegashi/msgraph.go@v0.1.4/beta/ActionReport.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  // ApplicationSignInDetailedSummary returns request builder for ApplicationSignInDetailedSummary collection
    15  func (b *ReportRootRequestBuilder) ApplicationSignInDetailedSummary() *ReportRootApplicationSignInDetailedSummaryCollectionRequestBuilder {
    16  	bb := &ReportRootApplicationSignInDetailedSummaryCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
    17  	bb.baseURL += "/applicationSignInDetailedSummary"
    18  	return bb
    19  }
    20  
    21  // ReportRootApplicationSignInDetailedSummaryCollectionRequestBuilder is request builder for ApplicationSignInDetailedSummary collection
    22  type ReportRootApplicationSignInDetailedSummaryCollectionRequestBuilder struct{ BaseRequestBuilder }
    23  
    24  // Request returns request for ApplicationSignInDetailedSummary collection
    25  func (b *ReportRootApplicationSignInDetailedSummaryCollectionRequestBuilder) Request() *ReportRootApplicationSignInDetailedSummaryCollectionRequest {
    26  	return &ReportRootApplicationSignInDetailedSummaryCollectionRequest{
    27  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
    28  	}
    29  }
    30  
    31  // ID returns request builder for ApplicationSignInDetailedSummary item
    32  func (b *ReportRootApplicationSignInDetailedSummaryCollectionRequestBuilder) ID(id string) *ApplicationSignInDetailedSummaryRequestBuilder {
    33  	bb := &ApplicationSignInDetailedSummaryRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
    34  	bb.baseURL += "/" + id
    35  	return bb
    36  }
    37  
    38  // ReportRootApplicationSignInDetailedSummaryCollectionRequest is request for ApplicationSignInDetailedSummary collection
    39  type ReportRootApplicationSignInDetailedSummaryCollectionRequest struct{ BaseRequest }
    40  
    41  // Paging perfoms paging operation for ApplicationSignInDetailedSummary collection
    42  func (r *ReportRootApplicationSignInDetailedSummaryCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]ApplicationSignInDetailedSummary, error) {
    43  	req, err := r.NewJSONRequest(method, path, obj)
    44  	if err != nil {
    45  		return nil, err
    46  	}
    47  	if ctx != nil {
    48  		req = req.WithContext(ctx)
    49  	}
    50  	res, err := r.client.Do(req)
    51  	if err != nil {
    52  		return nil, err
    53  	}
    54  	var values []ApplicationSignInDetailedSummary
    55  	for {
    56  		if res.StatusCode != http.StatusOK {
    57  			b, _ := ioutil.ReadAll(res.Body)
    58  			res.Body.Close()
    59  			errRes := &ErrorResponse{Response: res}
    60  			err := jsonx.Unmarshal(b, errRes)
    61  			if err != nil {
    62  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
    63  			}
    64  			return nil, errRes
    65  		}
    66  		var (
    67  			paging Paging
    68  			value  []ApplicationSignInDetailedSummary
    69  		)
    70  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
    71  		res.Body.Close()
    72  		if err != nil {
    73  			return nil, err
    74  		}
    75  		err = jsonx.Unmarshal(paging.Value, &value)
    76  		if err != nil {
    77  			return nil, err
    78  		}
    79  		values = append(values, value...)
    80  		if n >= 0 {
    81  			n--
    82  		}
    83  		if n == 0 || len(paging.NextLink) == 0 {
    84  			return values, nil
    85  		}
    86  		req, err = http.NewRequest("GET", paging.NextLink, nil)
    87  		if ctx != nil {
    88  			req = req.WithContext(ctx)
    89  		}
    90  		res, err = r.client.Do(req)
    91  		if err != nil {
    92  			return nil, err
    93  		}
    94  	}
    95  }
    96  
    97  // GetN performs GET request for ApplicationSignInDetailedSummary collection, max N pages
    98  func (r *ReportRootApplicationSignInDetailedSummaryCollectionRequest) GetN(ctx context.Context, n int) ([]ApplicationSignInDetailedSummary, error) {
    99  	var query string
   100  	if r.query != nil {
   101  		query = "?" + r.query.Encode()
   102  	}
   103  	return r.Paging(ctx, "GET", query, nil, n)
   104  }
   105  
   106  // Get performs GET request for ApplicationSignInDetailedSummary collection
   107  func (r *ReportRootApplicationSignInDetailedSummaryCollectionRequest) Get(ctx context.Context) ([]ApplicationSignInDetailedSummary, error) {
   108  	return r.GetN(ctx, 0)
   109  }
   110  
   111  // Add performs POST request for ApplicationSignInDetailedSummary collection
   112  func (r *ReportRootApplicationSignInDetailedSummaryCollectionRequest) Add(ctx context.Context, reqObj *ApplicationSignInDetailedSummary) (resObj *ApplicationSignInDetailedSummary, err error) {
   113  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
   114  	return
   115  }
   116  
   117  // CredentialUserRegistrationDetails returns request builder for CredentialUserRegistrationDetails collection
   118  func (b *ReportRootRequestBuilder) CredentialUserRegistrationDetails() *ReportRootCredentialUserRegistrationDetailsCollectionRequestBuilder {
   119  	bb := &ReportRootCredentialUserRegistrationDetailsCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   120  	bb.baseURL += "/credentialUserRegistrationDetails"
   121  	return bb
   122  }
   123  
   124  // ReportRootCredentialUserRegistrationDetailsCollectionRequestBuilder is request builder for CredentialUserRegistrationDetails collection
   125  type ReportRootCredentialUserRegistrationDetailsCollectionRequestBuilder struct{ BaseRequestBuilder }
   126  
   127  // Request returns request for CredentialUserRegistrationDetails collection
   128  func (b *ReportRootCredentialUserRegistrationDetailsCollectionRequestBuilder) Request() *ReportRootCredentialUserRegistrationDetailsCollectionRequest {
   129  	return &ReportRootCredentialUserRegistrationDetailsCollectionRequest{
   130  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
   131  	}
   132  }
   133  
   134  // ID returns request builder for CredentialUserRegistrationDetails item
   135  func (b *ReportRootCredentialUserRegistrationDetailsCollectionRequestBuilder) ID(id string) *CredentialUserRegistrationDetailsRequestBuilder {
   136  	bb := &CredentialUserRegistrationDetailsRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   137  	bb.baseURL += "/" + id
   138  	return bb
   139  }
   140  
   141  // ReportRootCredentialUserRegistrationDetailsCollectionRequest is request for CredentialUserRegistrationDetails collection
   142  type ReportRootCredentialUserRegistrationDetailsCollectionRequest struct{ BaseRequest }
   143  
   144  // Paging perfoms paging operation for CredentialUserRegistrationDetails collection
   145  func (r *ReportRootCredentialUserRegistrationDetailsCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]CredentialUserRegistrationDetails, error) {
   146  	req, err := r.NewJSONRequest(method, path, obj)
   147  	if err != nil {
   148  		return nil, err
   149  	}
   150  	if ctx != nil {
   151  		req = req.WithContext(ctx)
   152  	}
   153  	res, err := r.client.Do(req)
   154  	if err != nil {
   155  		return nil, err
   156  	}
   157  	var values []CredentialUserRegistrationDetails
   158  	for {
   159  		if res.StatusCode != http.StatusOK {
   160  			b, _ := ioutil.ReadAll(res.Body)
   161  			res.Body.Close()
   162  			errRes := &ErrorResponse{Response: res}
   163  			err := jsonx.Unmarshal(b, errRes)
   164  			if err != nil {
   165  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
   166  			}
   167  			return nil, errRes
   168  		}
   169  		var (
   170  			paging Paging
   171  			value  []CredentialUserRegistrationDetails
   172  		)
   173  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
   174  		res.Body.Close()
   175  		if err != nil {
   176  			return nil, err
   177  		}
   178  		err = jsonx.Unmarshal(paging.Value, &value)
   179  		if err != nil {
   180  			return nil, err
   181  		}
   182  		values = append(values, value...)
   183  		if n >= 0 {
   184  			n--
   185  		}
   186  		if n == 0 || len(paging.NextLink) == 0 {
   187  			return values, nil
   188  		}
   189  		req, err = http.NewRequest("GET", paging.NextLink, nil)
   190  		if ctx != nil {
   191  			req = req.WithContext(ctx)
   192  		}
   193  		res, err = r.client.Do(req)
   194  		if err != nil {
   195  			return nil, err
   196  		}
   197  	}
   198  }
   199  
   200  // GetN performs GET request for CredentialUserRegistrationDetails collection, max N pages
   201  func (r *ReportRootCredentialUserRegistrationDetailsCollectionRequest) GetN(ctx context.Context, n int) ([]CredentialUserRegistrationDetails, error) {
   202  	var query string
   203  	if r.query != nil {
   204  		query = "?" + r.query.Encode()
   205  	}
   206  	return r.Paging(ctx, "GET", query, nil, n)
   207  }
   208  
   209  // Get performs GET request for CredentialUserRegistrationDetails collection
   210  func (r *ReportRootCredentialUserRegistrationDetailsCollectionRequest) Get(ctx context.Context) ([]CredentialUserRegistrationDetails, error) {
   211  	return r.GetN(ctx, 0)
   212  }
   213  
   214  // Add performs POST request for CredentialUserRegistrationDetails collection
   215  func (r *ReportRootCredentialUserRegistrationDetailsCollectionRequest) Add(ctx context.Context, reqObj *CredentialUserRegistrationDetails) (resObj *CredentialUserRegistrationDetails, err error) {
   216  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
   217  	return
   218  }
   219  
   220  // UserCredentialUsageDetails returns request builder for UserCredentialUsageDetails collection
   221  func (b *ReportRootRequestBuilder) UserCredentialUsageDetails() *ReportRootUserCredentialUsageDetailsCollectionRequestBuilder {
   222  	bb := &ReportRootUserCredentialUsageDetailsCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   223  	bb.baseURL += "/userCredentialUsageDetails"
   224  	return bb
   225  }
   226  
   227  // ReportRootUserCredentialUsageDetailsCollectionRequestBuilder is request builder for UserCredentialUsageDetails collection
   228  type ReportRootUserCredentialUsageDetailsCollectionRequestBuilder struct{ BaseRequestBuilder }
   229  
   230  // Request returns request for UserCredentialUsageDetails collection
   231  func (b *ReportRootUserCredentialUsageDetailsCollectionRequestBuilder) Request() *ReportRootUserCredentialUsageDetailsCollectionRequest {
   232  	return &ReportRootUserCredentialUsageDetailsCollectionRequest{
   233  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
   234  	}
   235  }
   236  
   237  // ID returns request builder for UserCredentialUsageDetails item
   238  func (b *ReportRootUserCredentialUsageDetailsCollectionRequestBuilder) ID(id string) *UserCredentialUsageDetailsRequestBuilder {
   239  	bb := &UserCredentialUsageDetailsRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   240  	bb.baseURL += "/" + id
   241  	return bb
   242  }
   243  
   244  // ReportRootUserCredentialUsageDetailsCollectionRequest is request for UserCredentialUsageDetails collection
   245  type ReportRootUserCredentialUsageDetailsCollectionRequest struct{ BaseRequest }
   246  
   247  // Paging perfoms paging operation for UserCredentialUsageDetails collection
   248  func (r *ReportRootUserCredentialUsageDetailsCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]UserCredentialUsageDetails, error) {
   249  	req, err := r.NewJSONRequest(method, path, obj)
   250  	if err != nil {
   251  		return nil, err
   252  	}
   253  	if ctx != nil {
   254  		req = req.WithContext(ctx)
   255  	}
   256  	res, err := r.client.Do(req)
   257  	if err != nil {
   258  		return nil, err
   259  	}
   260  	var values []UserCredentialUsageDetails
   261  	for {
   262  		if res.StatusCode != http.StatusOK {
   263  			b, _ := ioutil.ReadAll(res.Body)
   264  			res.Body.Close()
   265  			errRes := &ErrorResponse{Response: res}
   266  			err := jsonx.Unmarshal(b, errRes)
   267  			if err != nil {
   268  				return nil, fmt.Errorf("%s: %s", res.Status, string(b))
   269  			}
   270  			return nil, errRes
   271  		}
   272  		var (
   273  			paging Paging
   274  			value  []UserCredentialUsageDetails
   275  		)
   276  		err := jsonx.NewDecoder(res.Body).Decode(&paging)
   277  		res.Body.Close()
   278  		if err != nil {
   279  			return nil, err
   280  		}
   281  		err = jsonx.Unmarshal(paging.Value, &value)
   282  		if err != nil {
   283  			return nil, err
   284  		}
   285  		values = append(values, value...)
   286  		if n >= 0 {
   287  			n--
   288  		}
   289  		if n == 0 || len(paging.NextLink) == 0 {
   290  			return values, nil
   291  		}
   292  		req, err = http.NewRequest("GET", paging.NextLink, nil)
   293  		if ctx != nil {
   294  			req = req.WithContext(ctx)
   295  		}
   296  		res, err = r.client.Do(req)
   297  		if err != nil {
   298  			return nil, err
   299  		}
   300  	}
   301  }
   302  
   303  // GetN performs GET request for UserCredentialUsageDetails collection, max N pages
   304  func (r *ReportRootUserCredentialUsageDetailsCollectionRequest) GetN(ctx context.Context, n int) ([]UserCredentialUsageDetails, error) {
   305  	var query string
   306  	if r.query != nil {
   307  		query = "?" + r.query.Encode()
   308  	}
   309  	return r.Paging(ctx, "GET", query, nil, n)
   310  }
   311  
   312  // Get performs GET request for UserCredentialUsageDetails collection
   313  func (r *ReportRootUserCredentialUsageDetailsCollectionRequest) Get(ctx context.Context) ([]UserCredentialUsageDetails, error) {
   314  	return r.GetN(ctx, 0)
   315  }
   316  
   317  // Add performs POST request for UserCredentialUsageDetails collection
   318  func (r *ReportRootUserCredentialUsageDetailsCollectionRequest) Add(ctx context.Context, reqObj *UserCredentialUsageDetails) (resObj *UserCredentialUsageDetails, err error) {
   319  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
   320  	return
   321  }