github.com/yaegashi/msgraph.go@v0.1.4/beta/ActionOrg.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 // DirectReports returns request builder for DirectoryObject collection 15 func (b *OrgContactRequestBuilder) DirectReports() *OrgContactDirectReportsCollectionRequestBuilder { 16 bb := &OrgContactDirectReportsCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder} 17 bb.baseURL += "/directReports" 18 return bb 19 } 20 21 // OrgContactDirectReportsCollectionRequestBuilder is request builder for DirectoryObject collection 22 type OrgContactDirectReportsCollectionRequestBuilder struct{ BaseRequestBuilder } 23 24 // Request returns request for DirectoryObject collection 25 func (b *OrgContactDirectReportsCollectionRequestBuilder) Request() *OrgContactDirectReportsCollectionRequest { 26 return &OrgContactDirectReportsCollectionRequest{ 27 BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client}, 28 } 29 } 30 31 // ID returns request builder for DirectoryObject item 32 func (b *OrgContactDirectReportsCollectionRequestBuilder) ID(id string) *DirectoryObjectRequestBuilder { 33 bb := &DirectoryObjectRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder} 34 bb.baseURL += "/" + id 35 return bb 36 } 37 38 // OrgContactDirectReportsCollectionRequest is request for DirectoryObject collection 39 type OrgContactDirectReportsCollectionRequest struct{ BaseRequest } 40 41 // Paging perfoms paging operation for DirectoryObject collection 42 func (r *OrgContactDirectReportsCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]DirectoryObject, 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 []DirectoryObject 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 []DirectoryObject 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 DirectoryObject collection, max N pages 98 func (r *OrgContactDirectReportsCollectionRequest) GetN(ctx context.Context, n int) ([]DirectoryObject, 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 DirectoryObject collection 107 func (r *OrgContactDirectReportsCollectionRequest) Get(ctx context.Context) ([]DirectoryObject, error) { 108 return r.GetN(ctx, 0) 109 } 110 111 // Add performs POST request for DirectoryObject collection 112 func (r *OrgContactDirectReportsCollectionRequest) Add(ctx context.Context, reqObj *DirectoryObject) (resObj *DirectoryObject, err error) { 113 err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj) 114 return 115 } 116 117 // Manager is navigation property 118 func (b *OrgContactRequestBuilder) Manager() *DirectoryObjectRequestBuilder { 119 bb := &DirectoryObjectRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder} 120 bb.baseURL += "/manager" 121 return bb 122 } 123 124 // MemberOf returns request builder for DirectoryObject collection 125 func (b *OrgContactRequestBuilder) MemberOf() *OrgContactMemberOfCollectionRequestBuilder { 126 bb := &OrgContactMemberOfCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder} 127 bb.baseURL += "/memberOf" 128 return bb 129 } 130 131 // OrgContactMemberOfCollectionRequestBuilder is request builder for DirectoryObject collection 132 type OrgContactMemberOfCollectionRequestBuilder struct{ BaseRequestBuilder } 133 134 // Request returns request for DirectoryObject collection 135 func (b *OrgContactMemberOfCollectionRequestBuilder) Request() *OrgContactMemberOfCollectionRequest { 136 return &OrgContactMemberOfCollectionRequest{ 137 BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client}, 138 } 139 } 140 141 // ID returns request builder for DirectoryObject item 142 func (b *OrgContactMemberOfCollectionRequestBuilder) ID(id string) *DirectoryObjectRequestBuilder { 143 bb := &DirectoryObjectRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder} 144 bb.baseURL += "/" + id 145 return bb 146 } 147 148 // OrgContactMemberOfCollectionRequest is request for DirectoryObject collection 149 type OrgContactMemberOfCollectionRequest struct{ BaseRequest } 150 151 // Paging perfoms paging operation for DirectoryObject collection 152 func (r *OrgContactMemberOfCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]DirectoryObject, error) { 153 req, err := r.NewJSONRequest(method, path, obj) 154 if err != nil { 155 return nil, err 156 } 157 if ctx != nil { 158 req = req.WithContext(ctx) 159 } 160 res, err := r.client.Do(req) 161 if err != nil { 162 return nil, err 163 } 164 var values []DirectoryObject 165 for { 166 if res.StatusCode != http.StatusOK { 167 b, _ := ioutil.ReadAll(res.Body) 168 res.Body.Close() 169 errRes := &ErrorResponse{Response: res} 170 err := jsonx.Unmarshal(b, errRes) 171 if err != nil { 172 return nil, fmt.Errorf("%s: %s", res.Status, string(b)) 173 } 174 return nil, errRes 175 } 176 var ( 177 paging Paging 178 value []DirectoryObject 179 ) 180 err := jsonx.NewDecoder(res.Body).Decode(&paging) 181 res.Body.Close() 182 if err != nil { 183 return nil, err 184 } 185 err = jsonx.Unmarshal(paging.Value, &value) 186 if err != nil { 187 return nil, err 188 } 189 values = append(values, value...) 190 if n >= 0 { 191 n-- 192 } 193 if n == 0 || len(paging.NextLink) == 0 { 194 return values, nil 195 } 196 req, err = http.NewRequest("GET", paging.NextLink, nil) 197 if ctx != nil { 198 req = req.WithContext(ctx) 199 } 200 res, err = r.client.Do(req) 201 if err != nil { 202 return nil, err 203 } 204 } 205 } 206 207 // GetN performs GET request for DirectoryObject collection, max N pages 208 func (r *OrgContactMemberOfCollectionRequest) GetN(ctx context.Context, n int) ([]DirectoryObject, error) { 209 var query string 210 if r.query != nil { 211 query = "?" + r.query.Encode() 212 } 213 return r.Paging(ctx, "GET", query, nil, n) 214 } 215 216 // Get performs GET request for DirectoryObject collection 217 func (r *OrgContactMemberOfCollectionRequest) Get(ctx context.Context) ([]DirectoryObject, error) { 218 return r.GetN(ctx, 0) 219 } 220 221 // Add performs POST request for DirectoryObject collection 222 func (r *OrgContactMemberOfCollectionRequest) Add(ctx context.Context, reqObj *DirectoryObject) (resObj *DirectoryObject, err error) { 223 err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj) 224 return 225 } 226 227 // TransitiveMemberOf returns request builder for DirectoryObject collection 228 func (b *OrgContactRequestBuilder) TransitiveMemberOf() *OrgContactTransitiveMemberOfCollectionRequestBuilder { 229 bb := &OrgContactTransitiveMemberOfCollectionRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder} 230 bb.baseURL += "/transitiveMemberOf" 231 return bb 232 } 233 234 // OrgContactTransitiveMemberOfCollectionRequestBuilder is request builder for DirectoryObject collection 235 type OrgContactTransitiveMemberOfCollectionRequestBuilder struct{ BaseRequestBuilder } 236 237 // Request returns request for DirectoryObject collection 238 func (b *OrgContactTransitiveMemberOfCollectionRequestBuilder) Request() *OrgContactTransitiveMemberOfCollectionRequest { 239 return &OrgContactTransitiveMemberOfCollectionRequest{ 240 BaseRequest: BaseRequest{baseURL: b.baseURL, client: b.client}, 241 } 242 } 243 244 // ID returns request builder for DirectoryObject item 245 func (b *OrgContactTransitiveMemberOfCollectionRequestBuilder) ID(id string) *DirectoryObjectRequestBuilder { 246 bb := &DirectoryObjectRequestBuilder{BaseRequestBuilder: b.BaseRequestBuilder} 247 bb.baseURL += "/" + id 248 return bb 249 } 250 251 // OrgContactTransitiveMemberOfCollectionRequest is request for DirectoryObject collection 252 type OrgContactTransitiveMemberOfCollectionRequest struct{ BaseRequest } 253 254 // Paging perfoms paging operation for DirectoryObject collection 255 func (r *OrgContactTransitiveMemberOfCollectionRequest) Paging(ctx context.Context, method, path string, obj interface{}, n int) ([]DirectoryObject, error) { 256 req, err := r.NewJSONRequest(method, path, obj) 257 if err != nil { 258 return nil, err 259 } 260 if ctx != nil { 261 req = req.WithContext(ctx) 262 } 263 res, err := r.client.Do(req) 264 if err != nil { 265 return nil, err 266 } 267 var values []DirectoryObject 268 for { 269 if res.StatusCode != http.StatusOK { 270 b, _ := ioutil.ReadAll(res.Body) 271 res.Body.Close() 272 errRes := &ErrorResponse{Response: res} 273 err := jsonx.Unmarshal(b, errRes) 274 if err != nil { 275 return nil, fmt.Errorf("%s: %s", res.Status, string(b)) 276 } 277 return nil, errRes 278 } 279 var ( 280 paging Paging 281 value []DirectoryObject 282 ) 283 err := jsonx.NewDecoder(res.Body).Decode(&paging) 284 res.Body.Close() 285 if err != nil { 286 return nil, err 287 } 288 err = jsonx.Unmarshal(paging.Value, &value) 289 if err != nil { 290 return nil, err 291 } 292 values = append(values, value...) 293 if n >= 0 { 294 n-- 295 } 296 if n == 0 || len(paging.NextLink) == 0 { 297 return values, nil 298 } 299 req, err = http.NewRequest("GET", paging.NextLink, nil) 300 if ctx != nil { 301 req = req.WithContext(ctx) 302 } 303 res, err = r.client.Do(req) 304 if err != nil { 305 return nil, err 306 } 307 } 308 } 309 310 // GetN performs GET request for DirectoryObject collection, max N pages 311 func (r *OrgContactTransitiveMemberOfCollectionRequest) GetN(ctx context.Context, n int) ([]DirectoryObject, error) { 312 var query string 313 if r.query != nil { 314 query = "?" + r.query.Encode() 315 } 316 return r.Paging(ctx, "GET", query, nil, n) 317 } 318 319 // Get performs GET request for DirectoryObject collection 320 func (r *OrgContactTransitiveMemberOfCollectionRequest) Get(ctx context.Context) ([]DirectoryObject, error) { 321 return r.GetN(ctx, 0) 322 } 323 324 // Add performs POST request for DirectoryObject collection 325 func (r *OrgContactTransitiveMemberOfCollectionRequest) Add(ctx context.Context, reqObj *DirectoryObject) (resObj *DirectoryObject, err error) { 326 err = r.JSONRequest(ctx, "POST", "", reqObj, &resObj) 327 return 328 }