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 }