github.com/yaegashi/msgraph.go@v0.1.4/v1.0/ActionOrganization.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  // OrganizationSetMobileDeviceManagementAuthorityRequestParameter undocumented
    15  type OrganizationSetMobileDeviceManagementAuthorityRequestParameter struct {
    16  }
    17  
    18  // CertificateBasedAuthConfiguration returns request builder for CertificateBasedAuthConfiguration collection
    19  func (b *OrganizationRequestBuilder) CertificateBasedAuthConfiguration() *OrganizationCertificateBasedAuthConfigurationCollectionRequestBuilder {
    20  	bb := &OrganizationCertificateBasedAuthConfigurationCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
    21  	bb.baseURL += "/certificateBasedAuthConfiguration"
    22  	return bb
    23  }
    24  
    25  // OrganizationCertificateBasedAuthConfigurationCollectionRequestBuilder is request builder for CertificateBasedAuthConfiguration collection
    26  type OrganizationCertificateBasedAuthConfigurationCollectionRequestBuilder struct{ BaseRequestBuilder }
    27  
    28  // Request returns request for CertificateBasedAuthConfiguration collection
    29  func (b *OrganizationCertificateBasedAuthConfigurationCollectionRequestBuilder) Request() *OrganizationCertificateBasedAuthConfigurationCollectionRequest {
    30  	return &OrganizationCertificateBasedAuthConfigurationCollectionRequest{
    31  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
    32  	}
    33  }
    34  
    35  // ID returns request builder for CertificateBasedAuthConfiguration item
    36  func (b *OrganizationCertificateBasedAuthConfigurationCollectionRequestBuilder) ID(id string) *CertificateBasedAuthConfigurationRequestBuilder {
    37  	bb := &CertificateBasedAuthConfigurationRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
    38  	bb.baseURL += "/" + id
    39  	return bb
    40  }
    41  
    42  // OrganizationCertificateBasedAuthConfigurationCollectionRequest is request for CertificateBasedAuthConfiguration collection
    43  type OrganizationCertificateBasedAuthConfigurationCollectionRequest struct{ BaseRequest }
    44  
    45  // Paging perfoms paging operation for CertificateBasedAuthConfiguration collection
    46  func (r *OrganizationCertificateBasedAuthConfigurationCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]CertificateBasedAuthConfiguration, 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 []CertificateBasedAuthConfiguration
    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  []CertificateBasedAuthConfiguration
    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 CertificateBasedAuthConfiguration collection, max N pages
   102  func (r *OrganizationCertificateBasedAuthConfigurationCollectionRequest) GetN(ctx context.Context, n int) ([]CertificateBasedAuthConfiguration, 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 CertificateBasedAuthConfiguration collection
   111  func (r *OrganizationCertificateBasedAuthConfigurationCollectionRequest) Get(ctx context.Context) ([]CertificateBasedAuthConfiguration, error) {
   112  	return r.GetN(ctx, 0)
   113  }
   114  
   115  // Add performs POST request for CertificateBasedAuthConfiguration collection
   116  func (r *OrganizationCertificateBasedAuthConfigurationCollectionRequest) Add(ctx context.Context, reqObj *CertificateBasedAuthConfiguration) (resObj *CertificateBasedAuthConfiguration, err error) {
   117  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
   118  	return
   119  }
   120  
   121  // Extensions returns request builder for Extension collection
   122  func (b *OrganizationRequestBuilder) Extensions() *OrganizationExtensionsCollectionRequestBuilder {
   123  	bb := &OrganizationExtensionsCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   124  	bb.baseURL += "/extensions"
   125  	return bb
   126  }
   127  
   128  // OrganizationExtensionsCollectionRequestBuilder is request builder for Extension collection
   129  type OrganizationExtensionsCollectionRequestBuilder struct{ BaseRequestBuilder }
   130  
   131  // Request returns request for Extension collection
   132  func (b *OrganizationExtensionsCollectionRequestBuilder) Request() *OrganizationExtensionsCollectionRequest {
   133  	return &OrganizationExtensionsCollectionRequest{
   134  		BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client},
   135  	}
   136  }
   137  
   138  // ID returns request builder for Extension item
   139  func (b *OrganizationExtensionsCollectionRequestBuilder) ID(id string) *ExtensionRequestBuilder {
   140  	bb := &ExtensionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder}
   141  	bb.baseURL += "/" + id
   142  	return bb
   143  }
   144  
   145  // OrganizationExtensionsCollectionRequest is request for Extension collection
   146  type OrganizationExtensionsCollectionRequest struct{ BaseRequest }
   147  
   148  // Paging perfoms paging operation for Extension collection
   149  func (r *OrganizationExtensionsCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]Extension, 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 []Extension
   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  []Extension
   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 Extension collection, max N pages
   205  func (r *OrganizationExtensionsCollectionRequest) GetN(ctx context.Context, n int) ([]Extension, 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 Extension collection
   214  func (r *OrganizationExtensionsCollectionRequest) Get(ctx context.Context) ([]Extension, error) {
   215  	return r.GetN(ctx, 0)
   216  }
   217  
   218  // Add performs POST request for Extension collection
   219  func (r *OrganizationExtensionsCollectionRequest) Add(ctx context.Context, reqObj *Extension) (resObj *Extension, err error) {
   220  	err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj)
   221  	return
   222  }