1// Copyright 2019 Google LLC.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5// Code generated file. DO NOT EDIT.
6
7// Package healthcare provides access to the Cloud Healthcare API.
8//
9// For product documentation, see: https://cloud.google.com/healthcare
10//
11// Creating a client
12//
13// Usage example:
14//
15//   import "google.golang.org/api/healthcare/v1beta1"
16//   ...
17//   ctx := context.Background()
18//   healthcareService, err := healthcare.NewService(ctx)
19//
20// In this example, Google Application Default Credentials are used for authentication.
21//
22// For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
23//
24// Other authentication options
25//
26// To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey:
27//
28//   healthcareService, err := healthcare.NewService(ctx, option.WithAPIKey("AIza..."))
29//
30// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource:
31//
32//   config := &oauth2.Config{...}
33//   // ...
34//   token, err := config.Exchange(ctx, ...)
35//   healthcareService, err := healthcare.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
36//
37// See https://godoc.org/google.golang.org/api/option/ for details on options.
38package healthcare // import "google.golang.org/api/healthcare/v1beta1"
39
40import (
41	"bytes"
42	"context"
43	"encoding/json"
44	"errors"
45	"fmt"
46	"io"
47	"net/http"
48	"net/url"
49	"strconv"
50	"strings"
51
52	gensupport "google.golang.org/api/gensupport"
53	googleapi "google.golang.org/api/googleapi"
54	option "google.golang.org/api/option"
55	htransport "google.golang.org/api/transport/http"
56)
57
58// Always reference these packages, just in case the auto-generated code
59// below doesn't.
60var _ = bytes.NewBuffer
61var _ = strconv.Itoa
62var _ = fmt.Sprintf
63var _ = json.NewDecoder
64var _ = io.Copy
65var _ = url.Parse
66var _ = gensupport.MarshalJSON
67var _ = googleapi.Version
68var _ = errors.New
69var _ = strings.Replace
70var _ = context.Canceled
71
72const apiId = "healthcare:v1beta1"
73const apiName = "healthcare"
74const apiVersion = "v1beta1"
75const basePath = "https://healthcare.googleapis.com/"
76
77// OAuth2 scopes used by this API.
78const (
79	// View and manage your data across Google Cloud Platform services
80	CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
81)
82
83// NewService creates a new Service.
84func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) {
85	scopesOption := option.WithScopes(
86		"https://www.googleapis.com/auth/cloud-platform",
87	)
88	// NOTE: prepend, so we don't override user-specified scopes.
89	opts = append([]option.ClientOption{scopesOption}, opts...)
90	client, endpoint, err := htransport.NewClient(ctx, opts...)
91	if err != nil {
92		return nil, err
93	}
94	s, err := New(client)
95	if err != nil {
96		return nil, err
97	}
98	if endpoint != "" {
99		s.BasePath = endpoint
100	}
101	return s, nil
102}
103
104// New creates a new Service. It uses the provided http.Client for requests.
105//
106// Deprecated: please use NewService instead.
107// To provide a custom HTTP client, use option.WithHTTPClient.
108// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
109func New(client *http.Client) (*Service, error) {
110	if client == nil {
111		return nil, errors.New("client is nil")
112	}
113	s := &Service{client: client, BasePath: basePath}
114	s.Projects = NewProjectsService(s)
115	return s, nil
116}
117
118type Service struct {
119	client    *http.Client
120	BasePath  string // API endpoint base URL
121	UserAgent string // optional additional User-Agent fragment
122
123	Projects *ProjectsService
124}
125
126func (s *Service) userAgent() string {
127	if s.UserAgent == "" {
128		return googleapi.UserAgent
129	}
130	return googleapi.UserAgent + " " + s.UserAgent
131}
132
133func NewProjectsService(s *Service) *ProjectsService {
134	rs := &ProjectsService{s: s}
135	rs.Locations = NewProjectsLocationsService(s)
136	return rs
137}
138
139type ProjectsService struct {
140	s *Service
141
142	Locations *ProjectsLocationsService
143}
144
145func NewProjectsLocationsService(s *Service) *ProjectsLocationsService {
146	rs := &ProjectsLocationsService{s: s}
147	rs.Datasets = NewProjectsLocationsDatasetsService(s)
148	return rs
149}
150
151type ProjectsLocationsService struct {
152	s *Service
153
154	Datasets *ProjectsLocationsDatasetsService
155}
156
157func NewProjectsLocationsDatasetsService(s *Service) *ProjectsLocationsDatasetsService {
158	rs := &ProjectsLocationsDatasetsService{s: s}
159	rs.DicomStores = NewProjectsLocationsDatasetsDicomStoresService(s)
160	rs.FhirStores = NewProjectsLocationsDatasetsFhirStoresService(s)
161	rs.Hl7V2Stores = NewProjectsLocationsDatasetsHl7V2StoresService(s)
162	rs.Operations = NewProjectsLocationsDatasetsOperationsService(s)
163	return rs
164}
165
166type ProjectsLocationsDatasetsService struct {
167	s *Service
168
169	DicomStores *ProjectsLocationsDatasetsDicomStoresService
170
171	FhirStores *ProjectsLocationsDatasetsFhirStoresService
172
173	Hl7V2Stores *ProjectsLocationsDatasetsHl7V2StoresService
174
175	Operations *ProjectsLocationsDatasetsOperationsService
176}
177
178func NewProjectsLocationsDatasetsDicomStoresService(s *Service) *ProjectsLocationsDatasetsDicomStoresService {
179	rs := &ProjectsLocationsDatasetsDicomStoresService{s: s}
180	rs.Studies = NewProjectsLocationsDatasetsDicomStoresStudiesService(s)
181	return rs
182}
183
184type ProjectsLocationsDatasetsDicomStoresService struct {
185	s *Service
186
187	Studies *ProjectsLocationsDatasetsDicomStoresStudiesService
188}
189
190func NewProjectsLocationsDatasetsDicomStoresStudiesService(s *Service) *ProjectsLocationsDatasetsDicomStoresStudiesService {
191	rs := &ProjectsLocationsDatasetsDicomStoresStudiesService{s: s}
192	rs.Series = NewProjectsLocationsDatasetsDicomStoresStudiesSeriesService(s)
193	return rs
194}
195
196type ProjectsLocationsDatasetsDicomStoresStudiesService struct {
197	s *Service
198
199	Series *ProjectsLocationsDatasetsDicomStoresStudiesSeriesService
200}
201
202func NewProjectsLocationsDatasetsDicomStoresStudiesSeriesService(s *Service) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesService {
203	rs := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesService{s: s}
204	rs.Instances = NewProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesService(s)
205	return rs
206}
207
208type ProjectsLocationsDatasetsDicomStoresStudiesSeriesService struct {
209	s *Service
210
211	Instances *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesService
212}
213
214func NewProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesService(s *Service) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesService {
215	rs := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesService{s: s}
216	rs.Frames = NewProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesService(s)
217	return rs
218}
219
220type ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesService struct {
221	s *Service
222
223	Frames *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesService
224}
225
226func NewProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesService(s *Service) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesService {
227	rs := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesService{s: s}
228	return rs
229}
230
231type ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesService struct {
232	s *Service
233}
234
235func NewProjectsLocationsDatasetsFhirStoresService(s *Service) *ProjectsLocationsDatasetsFhirStoresService {
236	rs := &ProjectsLocationsDatasetsFhirStoresService{s: s}
237	rs.Fhir = NewProjectsLocationsDatasetsFhirStoresFhirService(s)
238	return rs
239}
240
241type ProjectsLocationsDatasetsFhirStoresService struct {
242	s *Service
243
244	Fhir *ProjectsLocationsDatasetsFhirStoresFhirService
245}
246
247func NewProjectsLocationsDatasetsFhirStoresFhirService(s *Service) *ProjectsLocationsDatasetsFhirStoresFhirService {
248	rs := &ProjectsLocationsDatasetsFhirStoresFhirService{s: s}
249	return rs
250}
251
252type ProjectsLocationsDatasetsFhirStoresFhirService struct {
253	s *Service
254}
255
256func NewProjectsLocationsDatasetsHl7V2StoresService(s *Service) *ProjectsLocationsDatasetsHl7V2StoresService {
257	rs := &ProjectsLocationsDatasetsHl7V2StoresService{s: s}
258	rs.Messages = NewProjectsLocationsDatasetsHl7V2StoresMessagesService(s)
259	return rs
260}
261
262type ProjectsLocationsDatasetsHl7V2StoresService struct {
263	s *Service
264
265	Messages *ProjectsLocationsDatasetsHl7V2StoresMessagesService
266}
267
268func NewProjectsLocationsDatasetsHl7V2StoresMessagesService(s *Service) *ProjectsLocationsDatasetsHl7V2StoresMessagesService {
269	rs := &ProjectsLocationsDatasetsHl7V2StoresMessagesService{s: s}
270	return rs
271}
272
273type ProjectsLocationsDatasetsHl7V2StoresMessagesService struct {
274	s *Service
275}
276
277func NewProjectsLocationsDatasetsOperationsService(s *Service) *ProjectsLocationsDatasetsOperationsService {
278	rs := &ProjectsLocationsDatasetsOperationsService{s: s}
279	return rs
280}
281
282type ProjectsLocationsDatasetsOperationsService struct {
283	s *Service
284}
285
286// AuditConfig: Specifies the audit configuration for a service.
287// The configuration determines which permission types are logged, and
288// what
289// identities, if any, are exempted from logging.
290// An AuditConfig must have one or more AuditLogConfigs.
291//
292// If there are AuditConfigs for both `allServices` and a specific
293// service,
294// the union of the two AuditConfigs is used for that service: the
295// log_types
296// specified in each AuditConfig are enabled, and the exempted_members
297// in each
298// AuditLogConfig are exempted.
299//
300// Example Policy with multiple AuditConfigs:
301//
302//     {
303//       "audit_configs": [
304//         {
305//           "service": "allServices"
306//           "audit_log_configs": [
307//             {
308//               "log_type": "DATA_READ",
309//               "exempted_members": [
310//                 "user:foo@gmail.com"
311//               ]
312//             },
313//             {
314//               "log_type": "DATA_WRITE",
315//             },
316//             {
317//               "log_type": "ADMIN_READ",
318//             }
319//           ]
320//         },
321//         {
322//           "service": "fooservice.googleapis.com"
323//           "audit_log_configs": [
324//             {
325//               "log_type": "DATA_READ",
326//             },
327//             {
328//               "log_type": "DATA_WRITE",
329//               "exempted_members": [
330//                 "user:bar@gmail.com"
331//               ]
332//             }
333//           ]
334//         }
335//       ]
336//     }
337//
338// For fooservice, this policy enables DATA_READ, DATA_WRITE and
339// ADMIN_READ
340// logging. It also exempts foo@gmail.com from DATA_READ logging,
341// and
342// bar@gmail.com from DATA_WRITE logging.
343type AuditConfig struct {
344	// AuditLogConfigs: The configuration for logging of each type of
345	// permission.
346	AuditLogConfigs []*AuditLogConfig `json:"auditLogConfigs,omitempty"`
347
348	// Service: Specifies a service that will be enabled for audit
349	// logging.
350	// For example, `storage.googleapis.com`,
351	// `cloudsql.googleapis.com`.
352	// `allServices` is a special value that covers all services.
353	Service string `json:"service,omitempty"`
354
355	// ForceSendFields is a list of field names (e.g. "AuditLogConfigs") to
356	// unconditionally include in API requests. By default, fields with
357	// empty values are omitted from API requests. However, any non-pointer,
358	// non-interface field appearing in ForceSendFields will be sent to the
359	// server regardless of whether the field is empty or not. This may be
360	// used to include empty fields in Patch requests.
361	ForceSendFields []string `json:"-"`
362
363	// NullFields is a list of field names (e.g. "AuditLogConfigs") to
364	// include in API requests with the JSON null value. By default, fields
365	// with empty values are omitted from API requests. However, any field
366	// with an empty value appearing in NullFields will be sent to the
367	// server as null. It is an error if a field in this list has a
368	// non-empty value. This may be used to include null fields in Patch
369	// requests.
370	NullFields []string `json:"-"`
371}
372
373func (s *AuditConfig) MarshalJSON() ([]byte, error) {
374	type NoMethod AuditConfig
375	raw := NoMethod(*s)
376	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
377}
378
379// AuditLogConfig: Provides the configuration for logging a type of
380// permissions.
381// Example:
382//
383//     {
384//       "audit_log_configs": [
385//         {
386//           "log_type": "DATA_READ",
387//           "exempted_members": [
388//             "user:foo@gmail.com"
389//           ]
390//         },
391//         {
392//           "log_type": "DATA_WRITE",
393//         }
394//       ]
395//     }
396//
397// This enables 'DATA_READ' and 'DATA_WRITE' logging, while
398// exempting
399// foo@gmail.com from DATA_READ logging.
400type AuditLogConfig struct {
401	// ExemptedMembers: Specifies the identities that do not cause logging
402	// for this type of
403	// permission.
404	// Follows the same format of Binding.members.
405	ExemptedMembers []string `json:"exemptedMembers,omitempty"`
406
407	// LogType: The log type that this config enables.
408	//
409	// Possible values:
410	//   "LOG_TYPE_UNSPECIFIED" - Default case. Should never be this.
411	//   "ADMIN_READ" - Admin reads. Example: CloudIAM getIamPolicy
412	//   "DATA_WRITE" - Data writes. Example: CloudSQL Users create
413	//   "DATA_READ" - Data reads. Example: CloudSQL Users list
414	LogType string `json:"logType,omitempty"`
415
416	// ForceSendFields is a list of field names (e.g. "ExemptedMembers") to
417	// unconditionally include in API requests. By default, fields with
418	// empty values are omitted from API requests. However, any non-pointer,
419	// non-interface field appearing in ForceSendFields will be sent to the
420	// server regardless of whether the field is empty or not. This may be
421	// used to include empty fields in Patch requests.
422	ForceSendFields []string `json:"-"`
423
424	// NullFields is a list of field names (e.g. "ExemptedMembers") to
425	// include in API requests with the JSON null value. By default, fields
426	// with empty values are omitted from API requests. However, any field
427	// with an empty value appearing in NullFields will be sent to the
428	// server as null. It is an error if a field in this list has a
429	// non-empty value. This may be used to include null fields in Patch
430	// requests.
431	NullFields []string `json:"-"`
432}
433
434func (s *AuditLogConfig) MarshalJSON() ([]byte, error) {
435	type NoMethod AuditLogConfig
436	raw := NoMethod(*s)
437	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
438}
439
440// Binding: Associates `members` with a `role`.
441type Binding struct {
442	// Condition: The condition that is associated with this binding.
443	// NOTE: An unsatisfied condition will not allow user access via
444	// current
445	// binding. Different bindings, including their conditions, are
446	// examined
447	// independently.
448	Condition *Expr `json:"condition,omitempty"`
449
450	// Members: Specifies the identities requesting access for a Cloud
451	// Platform resource.
452	// `members` can have the following values:
453	//
454	// * `allUsers`: A special identifier that represents anyone who is
455	//    on the internet; with or without a Google account.
456	//
457	// * `allAuthenticatedUsers`: A special identifier that represents
458	// anyone
459	//    who is authenticated with a Google account or a service
460	// account.
461	//
462	// * `user:{emailid}`: An email address that represents a specific
463	// Google
464	//    account. For example, `alice@gmail.com` .
465	//
466	//
467	// * `serviceAccount:{emailid}`: An email address that represents a
468	// service
469	//    account. For example,
470	// `my-other-app@appspot.gserviceaccount.com`.
471	//
472	// * `group:{emailid}`: An email address that represents a Google
473	// group.
474	//    For example, `admins@example.com`.
475	//
476	//
477	// * `domain:{domain}`: The G Suite domain (primary) that represents all
478	// the
479	//    users of that domain. For example, `google.com` or
480	// `example.com`.
481	//
482	//
483	Members []string `json:"members,omitempty"`
484
485	// Role: Role that is assigned to `members`.
486	// For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
487	Role string `json:"role,omitempty"`
488
489	// ForceSendFields is a list of field names (e.g. "Condition") to
490	// unconditionally include in API requests. By default, fields with
491	// empty values are omitted from API requests. However, any non-pointer,
492	// non-interface field appearing in ForceSendFields will be sent to the
493	// server regardless of whether the field is empty or not. This may be
494	// used to include empty fields in Patch requests.
495	ForceSendFields []string `json:"-"`
496
497	// NullFields is a list of field names (e.g. "Condition") to include in
498	// API requests with the JSON null value. By default, fields with empty
499	// values are omitted from API requests. However, any field with an
500	// empty value appearing in NullFields will be sent to the server as
501	// null. It is an error if a field in this list has a non-empty value.
502	// This may be used to include null fields in Patch requests.
503	NullFields []string `json:"-"`
504}
505
506func (s *Binding) MarshalJSON() ([]byte, error) {
507	type NoMethod Binding
508	raw := NoMethod(*s)
509	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
510}
511
512// CharacterMaskConfig: Mask a string by replacing its characters with a
513// fixed character.
514type CharacterMaskConfig struct {
515	// MaskingCharacter: Character to mask the sensitive values. If not
516	// supplied, defaults to "*".
517	MaskingCharacter string `json:"maskingCharacter,omitempty"`
518
519	// ForceSendFields is a list of field names (e.g. "MaskingCharacter") to
520	// unconditionally include in API requests. By default, fields with
521	// empty values are omitted from API requests. However, any non-pointer,
522	// non-interface field appearing in ForceSendFields will be sent to the
523	// server regardless of whether the field is empty or not. This may be
524	// used to include empty fields in Patch requests.
525	ForceSendFields []string `json:"-"`
526
527	// NullFields is a list of field names (e.g. "MaskingCharacter") to
528	// include in API requests with the JSON null value. By default, fields
529	// with empty values are omitted from API requests. However, any field
530	// with an empty value appearing in NullFields will be sent to the
531	// server as null. It is an error if a field in this list has a
532	// non-empty value. This may be used to include null fields in Patch
533	// requests.
534	NullFields []string `json:"-"`
535}
536
537func (s *CharacterMaskConfig) MarshalJSON() ([]byte, error) {
538	type NoMethod CharacterMaskConfig
539	raw := NoMethod(*s)
540	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
541}
542
543// CreateMessageRequest: Creates a new message.
544type CreateMessageRequest struct {
545	// Message: HL7v2 message.
546	Message *Message `json:"message,omitempty"`
547
548	// ForceSendFields is a list of field names (e.g. "Message") to
549	// unconditionally include in API requests. By default, fields with
550	// empty values are omitted from API requests. However, any non-pointer,
551	// non-interface field appearing in ForceSendFields will be sent to the
552	// server regardless of whether the field is empty or not. This may be
553	// used to include empty fields in Patch requests.
554	ForceSendFields []string `json:"-"`
555
556	// NullFields is a list of field names (e.g. "Message") to include in
557	// API requests with the JSON null value. By default, fields with empty
558	// values are omitted from API requests. However, any field with an
559	// empty value appearing in NullFields will be sent to the server as
560	// null. It is an error if a field in this list has a non-empty value.
561	// This may be used to include null fields in Patch requests.
562	NullFields []string `json:"-"`
563}
564
565func (s *CreateMessageRequest) MarshalJSON() ([]byte, error) {
566	type NoMethod CreateMessageRequest
567	raw := NoMethod(*s)
568	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
569}
570
571// CryptoHashConfig: Pseudonymization method that generates surrogates
572// via cryptographic hashing.
573// Uses SHA-256.
574// Outputs a base64-encoded representation of the hashed output
575// (for example, `L7k0BHmF1ha5U3NfGykjro4xWi1MPVQPjhMAZbSV9mM=`).
576type CryptoHashConfig struct {
577	// CryptoKey: An AES 128/192/256 bit key. Causes the hash to be computed
578	// based on this
579	// key. A default key is generated for each DeidentifyDataset operation
580	// and is
581	// used wherever crypto_key is not specified.
582	CryptoKey string `json:"cryptoKey,omitempty"`
583
584	// ForceSendFields is a list of field names (e.g. "CryptoKey") to
585	// unconditionally include in API requests. By default, fields with
586	// empty values are omitted from API requests. However, any non-pointer,
587	// non-interface field appearing in ForceSendFields will be sent to the
588	// server regardless of whether the field is empty or not. This may be
589	// used to include empty fields in Patch requests.
590	ForceSendFields []string `json:"-"`
591
592	// NullFields is a list of field names (e.g. "CryptoKey") to include in
593	// API requests with the JSON null value. By default, fields with empty
594	// values are omitted from API requests. However, any field with an
595	// empty value appearing in NullFields will be sent to the server as
596	// null. It is an error if a field in this list has a non-empty value.
597	// This may be used to include null fields in Patch requests.
598	NullFields []string `json:"-"`
599}
600
601func (s *CryptoHashConfig) MarshalJSON() ([]byte, error) {
602	type NoMethod CryptoHashConfig
603	raw := NoMethod(*s)
604	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
605}
606
607// Dataset: A message representing a health dataset.
608//
609// A health dataset represents a collection of healthcare data
610// pertaining to one
611// or more patients. This may include multiple modalities of healthcare
612// data,
613// such as electronic medical records or medical imaging data.
614type Dataset struct {
615	// Name: Output only. Resource name of the dataset, of the
616	// form
617	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_
618	// id}`.
619	Name string `json:"name,omitempty"`
620
621	// TimeZone: The default timezone used by this dataset. Must be a either
622	// a valid IANA
623	// time zone name such as "America/New_York" or empty, which defaults to
624	// UTC.
625	// This is used for parsing times in resources (e.g., HL7 messages)
626	// where no
627	// explicit timezone is specified.
628	TimeZone string `json:"timeZone,omitempty"`
629
630	// ServerResponse contains the HTTP response code and headers from the
631	// server.
632	googleapi.ServerResponse `json:"-"`
633
634	// ForceSendFields is a list of field names (e.g. "Name") to
635	// unconditionally include in API requests. By default, fields with
636	// empty values are omitted from API requests. However, any non-pointer,
637	// non-interface field appearing in ForceSendFields will be sent to the
638	// server regardless of whether the field is empty or not. This may be
639	// used to include empty fields in Patch requests.
640	ForceSendFields []string `json:"-"`
641
642	// NullFields is a list of field names (e.g. "Name") to include in API
643	// requests with the JSON null value. By default, fields with empty
644	// values are omitted from API requests. However, any field with an
645	// empty value appearing in NullFields will be sent to the server as
646	// null. It is an error if a field in this list has a non-empty value.
647	// This may be used to include null fields in Patch requests.
648	NullFields []string `json:"-"`
649}
650
651func (s *Dataset) MarshalJSON() ([]byte, error) {
652	type NoMethod Dataset
653	raw := NoMethod(*s)
654	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
655}
656
657// DateShiftConfig: Shift a date forward or backward in time by a random
658// amount which is
659// consistent for a given patient and crypto key combination.
660type DateShiftConfig struct {
661	// CryptoKey: An AES 128/192/256 bit key. Causes the shift to be
662	// computed based on this
663	// key and the patient ID. A default key is generated for
664	// each
665	// DeidentifyDataset operation and is used wherever crypto_key is
666	// not
667	// specified.
668	CryptoKey string `json:"cryptoKey,omitempty"`
669
670	// ForceSendFields is a list of field names (e.g. "CryptoKey") to
671	// unconditionally include in API requests. By default, fields with
672	// empty values are omitted from API requests. However, any non-pointer,
673	// non-interface field appearing in ForceSendFields will be sent to the
674	// server regardless of whether the field is empty or not. This may be
675	// used to include empty fields in Patch requests.
676	ForceSendFields []string `json:"-"`
677
678	// NullFields is a list of field names (e.g. "CryptoKey") to include in
679	// API requests with the JSON null value. By default, fields with empty
680	// values are omitted from API requests. However, any field with an
681	// empty value appearing in NullFields will be sent to the server as
682	// null. It is an error if a field in this list has a non-empty value.
683	// This may be used to include null fields in Patch requests.
684	NullFields []string `json:"-"`
685}
686
687func (s *DateShiftConfig) MarshalJSON() ([]byte, error) {
688	type NoMethod DateShiftConfig
689	raw := NoMethod(*s)
690	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
691}
692
693// DeidentifyConfig: Configures de-id options specific to different
694// types of content.
695// Each submessage customizes the handling of
696// an
697// https://tools.ietf.org/html/rfc6838 media type or subtype. Configs
698// are
699// applied in a nested manner at runtime.
700type DeidentifyConfig struct {
701	// Dicom: Configures de-id of application/DICOM content.
702	Dicom *DicomConfig `json:"dicom,omitempty"`
703
704	// Fhir: Configures de-id of application/FHIR content.
705	Fhir *FhirConfig `json:"fhir,omitempty"`
706
707	// Image: Configures de-identification of image pixels wherever they are
708	// found in the
709	// source_dataset.
710	Image *ImageConfig `json:"image,omitempty"`
711
712	// Text: Configures de-identification of text wherever it is found in
713	// the
714	// source_dataset.
715	Text *TextConfig `json:"text,omitempty"`
716
717	// ForceSendFields is a list of field names (e.g. "Dicom") to
718	// unconditionally include in API requests. By default, fields with
719	// empty values are omitted from API requests. However, any non-pointer,
720	// non-interface field appearing in ForceSendFields will be sent to the
721	// server regardless of whether the field is empty or not. This may be
722	// used to include empty fields in Patch requests.
723	ForceSendFields []string `json:"-"`
724
725	// NullFields is a list of field names (e.g. "Dicom") to include in API
726	// requests with the JSON null value. By default, fields with empty
727	// values are omitted from API requests. However, any field with an
728	// empty value appearing in NullFields will be sent to the server as
729	// null. It is an error if a field in this list has a non-empty value.
730	// This may be used to include null fields in Patch requests.
731	NullFields []string `json:"-"`
732}
733
734func (s *DeidentifyConfig) MarshalJSON() ([]byte, error) {
735	type NoMethod DeidentifyConfig
736	raw := NoMethod(*s)
737	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
738}
739
740// DeidentifyDatasetRequest: Redacts identifying information from the
741// specified dataset.
742type DeidentifyDatasetRequest struct {
743	// Config: Deidentify configuration.
744	Config *DeidentifyConfig `json:"config,omitempty"`
745
746	// DestinationDataset: The name of the dataset resource to create and
747	// write the redacted data to
748	// (e.g.,
749	//
750	//  * The destination dataset must not exist.
751	//  * The destination dataset must be in the same project as the source
752	//    dataset. De-identifying data across multiple projects is not
753	// supported.
754	DestinationDataset string `json:"destinationDataset,omitempty"`
755
756	// ForceSendFields is a list of field names (e.g. "Config") to
757	// unconditionally include in API requests. By default, fields with
758	// empty values are omitted from API requests. However, any non-pointer,
759	// non-interface field appearing in ForceSendFields will be sent to the
760	// server regardless of whether the field is empty or not. This may be
761	// used to include empty fields in Patch requests.
762	ForceSendFields []string `json:"-"`
763
764	// NullFields is a list of field names (e.g. "Config") to include in API
765	// requests with the JSON null value. By default, fields with empty
766	// values are omitted from API requests. However, any field with an
767	// empty value appearing in NullFields will be sent to the server as
768	// null. It is an error if a field in this list has a non-empty value.
769	// This may be used to include null fields in Patch requests.
770	NullFields []string `json:"-"`
771}
772
773func (s *DeidentifyDatasetRequest) MarshalJSON() ([]byte, error) {
774	type NoMethod DeidentifyDatasetRequest
775	raw := NoMethod(*s)
776	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
777}
778
779// DeidentifyErrorDetails: Contains the status of the Deidentify
780// operation.
781type DeidentifyErrorDetails struct {
782	// FailureResourceCount: Number of resources failed to process.
783	FailureResourceCount int64 `json:"failureResourceCount,omitempty,string"`
784
785	// FailureStoreCount: Number of stores failed to process.
786	FailureStoreCount int64 `json:"failureStoreCount,omitempty,string"`
787
788	// SuccessResourceCount: Number of resources successfully processed.
789	SuccessResourceCount int64 `json:"successResourceCount,omitempty,string"`
790
791	// SuccessStoreCount: Number of stores successfully processed.
792	SuccessStoreCount int64 `json:"successStoreCount,omitempty,string"`
793
794	// ForceSendFields is a list of field names (e.g.
795	// "FailureResourceCount") to unconditionally include in API requests.
796	// By default, fields with empty values are omitted from API requests.
797	// However, any non-pointer, non-interface field appearing in
798	// ForceSendFields will be sent to the server regardless of whether the
799	// field is empty or not. This may be used to include empty fields in
800	// Patch requests.
801	ForceSendFields []string `json:"-"`
802
803	// NullFields is a list of field names (e.g. "FailureResourceCount") to
804	// include in API requests with the JSON null value. By default, fields
805	// with empty values are omitted from API requests. However, any field
806	// with an empty value appearing in NullFields will be sent to the
807	// server as null. It is an error if a field in this list has a
808	// non-empty value. This may be used to include null fields in Patch
809	// requests.
810	NullFields []string `json:"-"`
811}
812
813func (s *DeidentifyErrorDetails) MarshalJSON() ([]byte, error) {
814	type NoMethod DeidentifyErrorDetails
815	raw := NoMethod(*s)
816	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
817}
818
819// DeidentifySummary: Contains a detailed summary of the Deidentify
820// operation.
821type DeidentifySummary struct {
822	// SuccessResourceCount: Number of resources successfully processed.
823	SuccessResourceCount int64 `json:"successResourceCount,omitempty,string"`
824
825	// SuccessStoreCount: Number of stores successfully processed.
826	SuccessStoreCount int64 `json:"successStoreCount,omitempty,string"`
827
828	// ForceSendFields is a list of field names (e.g.
829	// "SuccessResourceCount") to unconditionally include in API requests.
830	// By default, fields with empty values are omitted from API requests.
831	// However, any non-pointer, non-interface field appearing in
832	// ForceSendFields will be sent to the server regardless of whether the
833	// field is empty or not. This may be used to include empty fields in
834	// Patch requests.
835	ForceSendFields []string `json:"-"`
836
837	// NullFields is a list of field names (e.g. "SuccessResourceCount") to
838	// include in API requests with the JSON null value. By default, fields
839	// with empty values are omitted from API requests. However, any field
840	// with an empty value appearing in NullFields will be sent to the
841	// server as null. It is an error if a field in this list has a
842	// non-empty value. This may be used to include null fields in Patch
843	// requests.
844	NullFields []string `json:"-"`
845}
846
847func (s *DeidentifySummary) MarshalJSON() ([]byte, error) {
848	type NoMethod DeidentifySummary
849	raw := NoMethod(*s)
850	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
851}
852
853// DicomConfig: Specifies the parameters needed for de-identification of
854// DICOM stores.
855type DicomConfig struct {
856	// FilterProfile: Tag filtering profile that determines which tags to
857	// keep/remove.
858	//
859	// Possible values:
860	//   "TAG_FILTER_PROFILE_UNSPECIFIED" - No tag filtration profile
861	// provided. Same as KEEP_ALL_PROFILE.
862	//   "MINIMAL_KEEP_LIST_PROFILE" - Keep only tags required to produce
863	// valid DICOM.
864	//   "ATTRIBUTE_CONFIDENTIALITY_BASIC_PROFILE" - Remove tags based on
865	// DICOM Standard's Attribute Confidentiality Basic
866	// Profile (DICOM Standard Edition
867	// 2018e)
868	// http://dicom.nema.org/medical/dicom/2018e/output/chtml/part15/c
869	// hapter_E.html.
870	//   "KEEP_ALL_PROFILE" - Keep all tags.
871	//   "DEIDENTIFY_TAG_CONTENTS" - Inspects within tag contents and
872	// replaces sensitive text. The process
873	// can be configured using the TextConfig.
874	// Applies to all tags with the following Value Representation
875	// names:
876	// AE, LO, LT, PN, SH, ST, UC, UT, DA, DT, AS
877	FilterProfile string `json:"filterProfile,omitempty"`
878
879	// KeepList: List of tags to keep. Remove all other tags.
880	KeepList *TagFilterList `json:"keepList,omitempty"`
881
882	// RemoveList: List of tags to remove. Keep all other tags.
883	RemoveList *TagFilterList `json:"removeList,omitempty"`
884
885	// ForceSendFields is a list of field names (e.g. "FilterProfile") to
886	// unconditionally include in API requests. By default, fields with
887	// empty values are omitted from API requests. However, any non-pointer,
888	// non-interface field appearing in ForceSendFields will be sent to the
889	// server regardless of whether the field is empty or not. This may be
890	// used to include empty fields in Patch requests.
891	ForceSendFields []string `json:"-"`
892
893	// NullFields is a list of field names (e.g. "FilterProfile") to include
894	// in API requests with the JSON null value. By default, fields with
895	// empty values are omitted from API requests. However, any field with
896	// an empty value appearing in NullFields will be sent to the server as
897	// null. It is an error if a field in this list has a non-empty value.
898	// This may be used to include null fields in Patch requests.
899	NullFields []string `json:"-"`
900}
901
902func (s *DicomConfig) MarshalJSON() ([]byte, error) {
903	type NoMethod DicomConfig
904	raw := NoMethod(*s)
905	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
906}
907
908// DicomStore: Represents a DICOM store.
909type DicomStore struct {
910	// Labels: User-supplied key-value pairs used to organize DICOM
911	// stores.
912	//
913	// Label keys must be between 1 and 63 characters long, have a UTF-8
914	// encoding
915	// of maximum 128 bytes, and must conform to the
916	// following PCRE regular expression:
917	// \p{Ll}\p{Lo}{0,62}
918	//
919	// Label values are optional, must be between 1 and 63 characters long,
920	// have
921	// a UTF-8 encoding of maximum 128 bytes, and must conform to
922	// the
923	// following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
924	//
925	// No more than 64 labels can be associated with a given store.
926	Labels map[string]string `json:"labels,omitempty"`
927
928	// Name: Output only. Resource name of the DICOM store, of the
929	// form
930	// `projects/{project_id}/locations/{location_id}/datasets/{dataset_
931	// id}/dicomStores/{dicom_store_id}`.
932	Name string `json:"name,omitempty"`
933
934	// NotificationConfig: Notification destination for new DICOM
935	// instances.
936	// Supplied by the client.
937	NotificationConfig *NotificationConfig `json:"notificationConfig,omitempty"`
938
939	// ServerResponse contains the HTTP response code and headers from the
940	// server.
941	googleapi.ServerResponse `json:"-"`
942
943	// ForceSendFields is a list of field names (e.g. "Labels") to
944	// unconditionally include in API requests. By default, fields with
945	// empty values are omitted from API requests. However, any non-pointer,
946	// non-interface field appearing in ForceSendFields will be sent to the
947	// server regardless of whether the field is empty or not. This may be
948	// used to include empty fields in Patch requests.
949	ForceSendFields []string `json:"-"`
950
951	// NullFields is a list of field names (e.g. "Labels") to include in API
952	// requests with the JSON null value. By default, fields with empty
953	// values are omitted from API requests. However, any field with an
954	// empty value appearing in NullFields will be sent to the server as
955	// null. It is an error if a field in this list has a non-empty value.
956	// This may be used to include null fields in Patch requests.
957	NullFields []string `json:"-"`
958}
959
960func (s *DicomStore) MarshalJSON() ([]byte, error) {
961	type NoMethod DicomStore
962	raw := NoMethod(*s)
963	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
964}
965
966// Empty: A generic empty message that you can re-use to avoid defining
967// duplicated
968// empty messages in your APIs. A typical example is to use it as the
969// request
970// or the response type of an API method. For instance:
971//
972//     service Foo {
973//       rpc Bar(google.protobuf.Empty) returns
974// (google.protobuf.Empty);
975//     }
976//
977// The JSON representation for `Empty` is empty JSON object `{}`.
978type Empty struct {
979	// ServerResponse contains the HTTP response code and headers from the
980	// server.
981	googleapi.ServerResponse `json:"-"`
982}
983
984// ErrorDetail: Structure to describe the error encountered during batch
985// operation on one
986// resource. This is used both for sample errors in operation response,
987// and
988// for format of errors in error reports.
989type ErrorDetail struct {
990	// Error: The status of the error.
991	Error *Status `json:"error,omitempty"`
992
993	// Resource: The identifier of the resource.
994	Resource string `json:"resource,omitempty"`
995
996	// ForceSendFields is a list of field names (e.g. "Error") to
997	// unconditionally include in API requests. By default, fields with
998	// empty values are omitted from API requests. However, any non-pointer,
999	// non-interface field appearing in ForceSendFields will be sent to the
1000	// server regardless of whether the field is empty or not. This may be
1001	// used to include empty fields in Patch requests.
1002	ForceSendFields []string `json:"-"`
1003
1004	// NullFields is a list of field names (e.g. "Error") to include in API
1005	// requests with the JSON null value. By default, fields with empty
1006	// values are omitted from API requests. However, any field with an
1007	// empty value appearing in NullFields will be sent to the server as
1008	// null. It is an error if a field in this list has a non-empty value.
1009	// This may be used to include null fields in Patch requests.
1010	NullFields []string `json:"-"`
1011}
1012
1013func (s *ErrorDetail) MarshalJSON() ([]byte, error) {
1014	type NoMethod ErrorDetail
1015	raw := NoMethod(*s)
1016	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1017}
1018
1019// ExportDicomDataRequest: Exports data from the specified DICOM
1020// store.
1021// If a given resource (e.g., a DICOM object with the same SOPInstance
1022// UID)
1023// already exists in the output, it is overwritten with the version
1024// in the source dataset.
1025// Exported DICOM data will persist when the DICOM store from which it
1026// was
1027// exported is deleted.
1028type ExportDicomDataRequest struct {
1029	// BigqueryDestination: The BigQuery output destination.
1030	//
1031	// You can only export to a BigQuery dataset that's in the same project
1032	// as
1033	// the DICOM store you're exporting from.
1034	//
1035	// The BigQuery location requires two IAM
1036	// roles:
1037	// `roles/bigquery.dataEditor` and `roles/bigquery.jobUser`.
1038	BigqueryDestination *GoogleCloudHealthcareV1beta1DicomBigQueryDestination `json:"bigqueryDestination,omitempty"`
1039
1040	// GcsDestination: The Cloud Storage output destination.
1041	//
1042	// The Cloud Storage location requires the `roles/storage.objectAdmin`
1043	// Cloud
1044	// IAM role.
1045	GcsDestination *GoogleCloudHealthcareV1beta1DicomGcsDestination `json:"gcsDestination,omitempty"`
1046
1047	// ForceSendFields is a list of field names (e.g. "BigqueryDestination")
1048	// to unconditionally include in API requests. By default, fields with
1049	// empty values are omitted from API requests. However, any non-pointer,
1050	// non-interface field appearing in ForceSendFields will be sent to the
1051	// server regardless of whether the field is empty or not. This may be
1052	// used to include empty fields in Patch requests.
1053	ForceSendFields []string `json:"-"`
1054
1055	// NullFields is a list of field names (e.g. "BigqueryDestination") to
1056	// include in API requests with the JSON null value. By default, fields
1057	// with empty values are omitted from API requests. However, any field
1058	// with an empty value appearing in NullFields will be sent to the
1059	// server as null. It is an error if a field in this list has a
1060	// non-empty value. This may be used to include null fields in Patch
1061	// requests.
1062	NullFields []string `json:"-"`
1063}
1064
1065func (s *ExportDicomDataRequest) MarshalJSON() ([]byte, error) {
1066	type NoMethod ExportDicomDataRequest
1067	raw := NoMethod(*s)
1068	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1069}
1070
1071// ExportResourcesRequest: Request to export resources.
1072type ExportResourcesRequest struct {
1073	// BigqueryDestination: The BigQuery output destination.
1074	//
1075	// The BigQuery location requires two IAM
1076	// roles:
1077	// `roles/bigquery.dataEditor` and `roles/bigquery.jobUser`.
1078	//
1079	// The output will be one BigQuery table per resource type.
1080	BigqueryDestination *GoogleCloudHealthcareV1beta1FhirBigQueryDestination `json:"bigqueryDestination,omitempty"`
1081
1082	// GcsDestination: The Cloud Storage output destination.
1083	//
1084	// The Cloud Storage location requires the `roles/storage.objectAdmin`
1085	// Cloud
1086	// IAM role.
1087	//
1088	// The exported outputs are
1089	// organized by FHIR resource types. The server will create one object
1090	// per
1091	// resource type. Each object contains newline delimited JSON, and each
1092	// line
1093	// is a FHIR resource.
1094	GcsDestination *GoogleCloudHealthcareV1beta1FhirRestGcsDestination `json:"gcsDestination,omitempty"`
1095
1096	// ForceSendFields is a list of field names (e.g. "BigqueryDestination")
1097	// to unconditionally include in API requests. By default, fields with
1098	// empty values are omitted from API requests. However, any non-pointer,
1099	// non-interface field appearing in ForceSendFields will be sent to the
1100	// server regardless of whether the field is empty or not. This may be
1101	// used to include empty fields in Patch requests.
1102	ForceSendFields []string `json:"-"`
1103
1104	// NullFields is a list of field names (e.g. "BigqueryDestination") to
1105	// include in API requests with the JSON null value. By default, fields
1106	// with empty values are omitted from API requests. However, any field
1107	// with an empty value appearing in NullFields will be sent to the
1108	// server as null. It is an error if a field in this list has a
1109	// non-empty value. This may be used to include null fields in Patch
1110	// requests.
1111	NullFields []string `json:"-"`
1112}
1113
1114func (s *ExportResourcesRequest) MarshalJSON() ([]byte, error) {
1115	type NoMethod ExportResourcesRequest
1116	raw := NoMethod(*s)
1117	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1118}
1119
1120// Expr: Represents an expression text. Example:
1121//
1122//     title: "User account presence"
1123//     description: "Determines whether the request has a user account"
1124//     expression: "size(request.user) > 0"
1125type Expr struct {
1126	// Description: An optional description of the expression. This is a
1127	// longer text which
1128	// describes the expression, e.g. when hovered over it in a UI.
1129	Description string `json:"description,omitempty"`
1130
1131	// Expression: Textual representation of an expression in
1132	// Common Expression Language syntax.
1133	//
1134	// The application context of the containing message determines
1135	// which
1136	// well-known feature set of CEL is supported.
1137	Expression string `json:"expression,omitempty"`
1138
1139	// Location: An optional string indicating the location of the
1140	// expression for error
1141	// reporting, e.g. a file name and a position in the file.
1142	Location string `json:"location,omitempty"`
1143
1144	// Title: An optional title for the expression, i.e. a short string
1145	// describing
1146	// its purpose. This can be used e.g. in UIs which allow to enter
1147	// the
1148	// expression.
1149	Title string `json:"title,omitempty"`
1150
1151	// ForceSendFields is a list of field names (e.g. "Description") to
1152	// unconditionally include in API requests. By default, fields with
1153	// empty values are omitted from API requests. However, any non-pointer,
1154	// non-interface field appearing in ForceSendFields will be sent to the
1155	// server regardless of whether the field is empty or not. This may be
1156	// used to include empty fields in Patch requests.
1157	ForceSendFields []string `json:"-"`
1158
1159	// NullFields is a list of field names (e.g. "Description") to include
1160	// in API requests with the JSON null value. By default, fields with
1161	// empty values are omitted from API requests. However, any field with
1162	// an empty value appearing in NullFields will be sent to the server as
1163	// null. It is an error if a field in this list has a non-empty value.
1164	// This may be used to include null fields in Patch requests.
1165	NullFields []string `json:"-"`
1166}
1167
1168func (s *Expr) MarshalJSON() ([]byte, error) {
1169	type NoMethod Expr
1170	raw := NoMethod(*s)
1171	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1172}
1173
1174// FhirConfig: Specifies how de-identification of a FHIR store should be
1175// handled.
1176type FhirConfig struct {
1177	// FieldMetadataList: Specifies FHIR paths to match and how to transform
1178	// them. Any field that
1179	// is not matched by a FieldMetadata will be passed through to the
1180	// output
1181	// dataset unmodified. All extensions are removed in the output.
1182	FieldMetadataList []*FieldMetadata `json:"fieldMetadataList,omitempty"`
1183
1184	// ForceSendFields is a list of field names (e.g. "FieldMetadataList")
1185	// to unconditionally include in API requests. By default, fields with
1186	// empty values are omitted from API requests. However, any non-pointer,
1187	// non-interface field appearing in ForceSendFields will be sent to the
1188	// server regardless of whether the field is empty or not. This may be
1189	// used to include empty fields in Patch requests.
1190	ForceSendFields []string `json:"-"`
1191
1192	// NullFields is a list of field names (e.g. "FieldMetadataList") to
1193	// include in API requests with the JSON null value. By default, fields
1194	// with empty values are omitted from API requests. However, any field
1195	// with an empty value appearing in NullFields will be sent to the
1196	// server as null. It is an error if a field in this list has a
1197	// non-empty value. This may be used to include null fields in Patch
1198	// requests.
1199	NullFields []string `json:"-"`
1200}
1201
1202func (s *FhirConfig) MarshalJSON() ([]byte, error) {
1203	type NoMethod FhirConfig
1204	raw := NoMethod(*s)
1205	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1206}
1207
1208// FhirStore: Represents a FHIR store.
1209type FhirStore struct {
1210	// DisableReferentialIntegrity: Whether to disable referential integrity
1211	// in this FHIR store. This field is
1212	// immutable after FHIR store creation.
1213	// The default value is false, meaning that the API will enforce
1214	// referential
1215	// integrity and fail the requests that will result in inconsistent
1216	// state in
1217	// the FHIR store.
1218	// When this field is set to true, the API will skip referential
1219	// integrity
1220	// check. Consequently, operations that rely on references, such
1221	// as
1222	// GetPatientEverything, will not return all the results if broken
1223	// references
1224	// exist.
1225	DisableReferentialIntegrity bool `json:"disableReferentialIntegrity,omitempty"`
1226
1227	// DisableResourceVersioning: Whether to disable resource versioning for
1228	// this FHIR store. This field can
1229	// not be changed after the creation of FHIR store.
1230	// If set to false, which is the default behavior, all write operations
1231	// will
1232	// cause historical versions to be recorded automatically. The
1233	// historical
1234	// versions can be fetched through the history APIs, but cannot be
1235	// updated.
1236	// If set to true, no historical versions will be kept. The server will
1237	// send
1238	// back errors for attempts to read the historical versions.
1239	DisableResourceVersioning bool `json:"disableResourceVersioning,omitempty"`
1240
1241	// EnableHistoryImport: Whether to allow the bulk import API to accept
1242	// history bundles and directly
1243	// insert historical resource versions into the FHIR store. Importing
1244	// resource
1245	// histories creates resource interactions that appear to have occurred
1246	// in the
1247	// past, which clients may not want to allow. If set to false, history
1248	// bundles
1249	// within an import will fail with an error.
1250	EnableHistoryImport bool `json:"enableHistoryImport,omitempty"`
1251
1252	// EnableUpdateCreate: Whether this FHIR store has the
1253	// [updateCreate
1254	// capability](https://www.hl7.org/fhir/capabilitystatement
1255	// -definitions.html#CapabilityStatement.rest.resource.updateCreate).
1256	// Thi
1257	// s determines if the client can use an Update operation to create a
1258	// new
1259	// resource with a client-specified ID. If false, all IDs are
1260	// server-assigned
1261	// through the Create operation and attempts to Update a non-existent
1262	// resource
1263	// will return errors. Please treat the audit logs with appropriate
1264	// levels of
1265	// care if client-specified resource IDs contain sensitive data such
1266	// as
1267	// patient identifiers, those IDs will be part of the FHIR resource
1268	// path
1269	// recorded in Cloud audit logs and Cloud Pub/Sub notifications.
1270	EnableUpdateCreate bool `json:"enableUpdateCreate,omitempty"`
1271
1272	// Labels: User-supplied key-value pairs used to organize FHIR
1273	// stores.
1274	//
1275	// Label keys must be between 1 and 63 characters long, have a UTF-8
1276	// encoding
1277	// of maximum 128 bytes, and must conform to the
1278	// following PCRE regular expression:
1279	// \p{Ll}\p{Lo}{0,62}
1280	//
1281	// Label values are optional, must be between 1 and 63 characters long,
1282	// have
1283	// a UTF-8 encoding of maximum 128 bytes, and must conform to
1284	// the
1285	// following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
1286	//
1287	// No more than 64 labels can be associated with a given store.
1288	Labels map[string]string `json:"labels,omitempty"`
1289
1290	// Name: Output only. Resource name of the FHIR store, of the
1291	// form
1292	// `projects/{project_id}/datasets/{dataset_id}/fhirStores/{fhir_sto
1293	// re_id}`.
1294	Name string `json:"name,omitempty"`
1295
1296	// NotificationConfig: If non-empty, publish all resource modifications
1297	// of this FHIR store to
1298	// this destination. The Cloud Pub/Sub message attributes will contain a
1299	// map
1300	// with a string describing the action that has triggered the
1301	// notification,
1302	// e.g. "action":"CreateResource".
1303	NotificationConfig *NotificationConfig `json:"notificationConfig,omitempty"`
1304
1305	// ServerResponse contains the HTTP response code and headers from the
1306	// server.
1307	googleapi.ServerResponse `json:"-"`
1308
1309	// ForceSendFields is a list of field names (e.g.
1310	// "DisableReferentialIntegrity") to unconditionally include in API
1311	// requests. By default, fields with empty values are omitted from API
1312	// requests. However, any non-pointer, non-interface field appearing in
1313	// ForceSendFields will be sent to the server regardless of whether the
1314	// field is empty or not. This may be used to include empty fields in
1315	// Patch requests.
1316	ForceSendFields []string `json:"-"`
1317
1318	// NullFields is a list of field names (e.g.
1319	// "DisableReferentialIntegrity") to include in API requests with the
1320	// JSON null value. By default, fields with empty values are omitted
1321	// from API requests. However, any field with an empty value appearing
1322	// in NullFields will be sent to the server as null. It is an error if a
1323	// field in this list has a non-empty value. This may be used to include
1324	// null fields in Patch requests.
1325	NullFields []string `json:"-"`
1326}
1327
1328func (s *FhirStore) MarshalJSON() ([]byte, error) {
1329	type NoMethod FhirStore
1330	raw := NoMethod(*s)
1331	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1332}
1333
1334// FieldMetadata: Specifies FHIR paths to match, and how to handle
1335// de-identification of
1336// matching fields.
1337type FieldMetadata struct {
1338	// Action: Deidentify action for one field.
1339	//
1340	// Possible values:
1341	//   "ACTION_UNSPECIFIED" - No action specified.
1342	//   "TRANSFORM" - Transform the entire field.
1343	//   "INSPECT_AND_TRANSFORM" - Inspect and transform any found PHI.
1344	//   "DO_NOT_TRANSFORM" - Do not transform.
1345	Action string `json:"action,omitempty"`
1346
1347	// Paths: List of paths to FHIR fields to be redacted. Each path is
1348	// a
1349	// period-separated list where each component is either a field name
1350	// or
1351	// FHIR type name, for example: Patient, HumanName.
1352	// For "choice" types (those defined in the FHIR spec with the
1353	// form:
1354	// field[x]) we use two separate components. e.g. "deceasedAge.unit"
1355	// is
1356	// matched by "Deceased.Age.unit".
1357	// Supported types are: AdministrativeGenderCode, Code, Date,
1358	// DateTime,
1359	// Decimal, HumanName, Id, LanguageCode, Markdown, MimeTypeCode,
1360	// Oid,
1361	// String, Uri, Uuid, Xhtml.
1362	Paths []string `json:"paths,omitempty"`
1363
1364	// ForceSendFields is a list of field names (e.g. "Action") to
1365	// unconditionally include in API requests. By default, fields with
1366	// empty values are omitted from API requests. However, any non-pointer,
1367	// non-interface field appearing in ForceSendFields will be sent to the
1368	// server regardless of whether the field is empty or not. This may be
1369	// used to include empty fields in Patch requests.
1370	ForceSendFields []string `json:"-"`
1371
1372	// NullFields is a list of field names (e.g. "Action") to include in API
1373	// requests with the JSON null value. By default, fields with empty
1374	// values are omitted from API requests. However, any field with an
1375	// empty value appearing in NullFields will be sent to the server as
1376	// null. It is an error if a field in this list has a non-empty value.
1377	// This may be used to include null fields in Patch requests.
1378	NullFields []string `json:"-"`
1379}
1380
1381func (s *FieldMetadata) MarshalJSON() ([]byte, error) {
1382	type NoMethod FieldMetadata
1383	raw := NoMethod(*s)
1384	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1385}
1386
1387// GoogleCloudHealthcareV1beta1DicomBigQueryDestination: The BigQuery
1388// table where the output should be written.
1389type GoogleCloudHealthcareV1beta1DicomBigQueryDestination struct {
1390	// Force: If the destination table already exists and this flag is
1391	// `TRUE`, the table
1392	// will be overwritten by the contents of the DICOM store. If the flag
1393	// is not
1394	// set and the destination table already exists, the export call returns
1395	// an
1396	// error.
1397	Force bool `json:"force,omitempty"`
1398
1399	// TableUri: BigQuery URI to a table, up to 2000 characters long, in the
1400	// format
1401	// `bq://projectId.bqDatasetId.tableId`
1402	TableUri string `json:"tableUri,omitempty"`
1403
1404	// ForceSendFields is a list of field names (e.g. "Force") to
1405	// unconditionally include in API requests. By default, fields with
1406	// empty values are omitted from API requests. However, any non-pointer,
1407	// non-interface field appearing in ForceSendFields will be sent to the
1408	// server regardless of whether the field is empty or not. This may be
1409	// used to include empty fields in Patch requests.
1410	ForceSendFields []string `json:"-"`
1411
1412	// NullFields is a list of field names (e.g. "Force") to include in API
1413	// requests with the JSON null value. By default, fields with empty
1414	// values are omitted from API requests. However, any field with an
1415	// empty value appearing in NullFields will be sent to the server as
1416	// null. It is an error if a field in this list has a non-empty value.
1417	// This may be used to include null fields in Patch requests.
1418	NullFields []string `json:"-"`
1419}
1420
1421func (s *GoogleCloudHealthcareV1beta1DicomBigQueryDestination) MarshalJSON() ([]byte, error) {
1422	type NoMethod GoogleCloudHealthcareV1beta1DicomBigQueryDestination
1423	raw := NoMethod(*s)
1424	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1425}
1426
1427// GoogleCloudHealthcareV1beta1DicomGcsDestination: The Cloud Storage
1428// location where the output should be written, and the
1429// export
1430// configuration.
1431type GoogleCloudHealthcareV1beta1DicomGcsDestination struct {
1432	// MimeType: MIME types supported by DICOM spec.
1433	// Each file will be written in the following
1434	// format:
1435	// `.../{study_id}/{series_id}/{instance_id}[/{frame_number}].{ex
1436	// tension}`
1437	// The frame_number component will exist only for multi-frame
1438	// instances.
1439	//
1440	// Refer to the DICOM conformance statement for permissible MIME
1441	// types:
1442	// https://cloud.google.com/healthcare/docs/dicom#wado-rs
1443	//
1444	// The following extensions will be used for output files:
1445	//   application/dicom -> .dcm
1446	//   image/jpeg -> .jpg
1447	//   image/png -> .png
1448	//
1449	// If unspecified, the instances will be exported in their
1450	// original
1451	// DICOM format.
1452	MimeType string `json:"mimeType,omitempty"`
1453
1454	// UriPrefix: The Cloud Storage destination to export to.
1455	//
1456	// URI for a Cloud Storage directory where result files should be
1457	// written (in
1458	// the format `gs://{bucket-id}/{path/to/destination/dir}`). If there is
1459	// no
1460	// trailing slash, the service will append one when composing the object
1461	// path.
1462	// The user is responsible for creating the Cloud Storage bucket
1463	// referenced in
1464	// `uri_prefix`.
1465	UriPrefix string `json:"uriPrefix,omitempty"`
1466
1467	// ForceSendFields is a list of field names (e.g. "MimeType") to
1468	// unconditionally include in API requests. By default, fields with
1469	// empty values are omitted from API requests. However, any non-pointer,
1470	// non-interface field appearing in ForceSendFields will be sent to the
1471	// server regardless of whether the field is empty or not. This may be
1472	// used to include empty fields in Patch requests.
1473	ForceSendFields []string `json:"-"`
1474
1475	// NullFields is a list of field names (e.g. "MimeType") to include in
1476	// API requests with the JSON null value. By default, fields with empty
1477	// values are omitted from API requests. However, any field with an
1478	// empty value appearing in NullFields will be sent to the server as
1479	// null. It is an error if a field in this list has a non-empty value.
1480	// This may be used to include null fields in Patch requests.
1481	NullFields []string `json:"-"`
1482}
1483
1484func (s *GoogleCloudHealthcareV1beta1DicomGcsDestination) MarshalJSON() ([]byte, error) {
1485	type NoMethod GoogleCloudHealthcareV1beta1DicomGcsDestination
1486	raw := NoMethod(*s)
1487	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1488}
1489
1490// GoogleCloudHealthcareV1beta1DicomGcsSource: Specifies the
1491// configuration for importing data from Cloud Storage.
1492type GoogleCloudHealthcareV1beta1DicomGcsSource struct {
1493	// Uri: Points to a Cloud Storage URI containing file(s) with
1494	// content only. The URI must be in the following
1495	// format:
1496	// `gs://{bucket_id}/{object_id}`. The URI can include wildcards
1497	// in
1498	// `object_id` and thus identify multiple files. Supported wildcards:
1499	//  '*' to match 0 or more non-separator characters
1500	//  '**' to match 0 or more characters (including separators). Must be
1501	// used at
1502	//       the end of a path and with no other wildcards in the
1503	//       path. Can also be used with a file extension (such as .dcm),
1504	// which
1505	//       imports all files with the extension in the specified directory
1506	// and
1507	//       its sub-directories. For example,
1508	//       `gs://my-bucket/my-directory/**.dcm` imports all files with
1509	// .dcm
1510	//       extensions in `my-directory/` and its sub-directories.
1511	//  '?' to match 1 character
1512	// All other URI formats are invalid.
1513	// Files matching the wildcard are expected to contain content only,
1514	// no
1515	// metadata.
1516	Uri string `json:"uri,omitempty"`
1517
1518	// ForceSendFields is a list of field names (e.g. "Uri") to
1519	// unconditionally include in API requests. By default, fields with
1520	// empty values are omitted from API requests. However, any non-pointer,
1521	// non-interface field appearing in ForceSendFields will be sent to the
1522	// server regardless of whether the field is empty or not. This may be
1523	// used to include empty fields in Patch requests.
1524	ForceSendFields []string `json:"-"`
1525
1526	// NullFields is a list of field names (e.g. "Uri") to include in API
1527	// requests with the JSON null value. By default, fields with empty
1528	// values are omitted from API requests. However, any field with an
1529	// empty value appearing in NullFields will be sent to the server as
1530	// null. It is an error if a field in this list has a non-empty value.
1531	// This may be used to include null fields in Patch requests.
1532	NullFields []string `json:"-"`
1533}
1534
1535func (s *GoogleCloudHealthcareV1beta1DicomGcsSource) MarshalJSON() ([]byte, error) {
1536	type NoMethod GoogleCloudHealthcareV1beta1DicomGcsSource
1537	raw := NoMethod(*s)
1538	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1539}
1540
1541// GoogleCloudHealthcareV1beta1FhirBigQueryDestination: The
1542// configuration for exporting to BigQuery.
1543type GoogleCloudHealthcareV1beta1FhirBigQueryDestination struct {
1544	// DatasetUri: BigQuery URI to a dataset, up to 2000 characters long, in
1545	// the format
1546	// `bq://projectId.bqDatasetId`
1547	DatasetUri string `json:"datasetUri,omitempty"`
1548
1549	// SchemaConfig: The configuration for the exported BigQuery schema.
1550	SchemaConfig *SchemaConfig `json:"schemaConfig,omitempty"`
1551
1552	// ForceSendFields is a list of field names (e.g. "DatasetUri") to
1553	// unconditionally include in API requests. By default, fields with
1554	// empty values are omitted from API requests. However, any non-pointer,
1555	// non-interface field appearing in ForceSendFields will be sent to the
1556	// server regardless of whether the field is empty or not. This may be
1557	// used to include empty fields in Patch requests.
1558	ForceSendFields []string `json:"-"`
1559
1560	// NullFields is a list of field names (e.g. "DatasetUri") to include in
1561	// API requests with the JSON null value. By default, fields with empty
1562	// values are omitted from API requests. However, any field with an
1563	// empty value appearing in NullFields will be sent to the server as
1564	// null. It is an error if a field in this list has a non-empty value.
1565	// This may be used to include null fields in Patch requests.
1566	NullFields []string `json:"-"`
1567}
1568
1569func (s *GoogleCloudHealthcareV1beta1FhirBigQueryDestination) MarshalJSON() ([]byte, error) {
1570	type NoMethod GoogleCloudHealthcareV1beta1FhirBigQueryDestination
1571	raw := NoMethod(*s)
1572	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1573}
1574
1575// GoogleCloudHealthcareV1beta1FhirRestExportResourcesResponse: Final
1576// response of exporting resources.
1577// This structure will be included in the
1578// response to describe the detailed
1579// outcome. It will only be included when the operation finishes.
1580type GoogleCloudHealthcareV1beta1FhirRestExportResourcesResponse struct {
1581	// FhirStore: The name of the FHIR store where resources have been
1582	// exported, in
1583	// the
1584	// format
1585	// `projects/{project_id}/locations/{location_id}/datasets/{da
1586	// taset_id}/fhirStores/{fhir_store_id}`.
1587	FhirStore string `json:"fhirStore,omitempty"`
1588
1589	// ResourceCount: The total number of resources exported from the
1590	// requested FHIR store.
1591	ResourceCount int64 `json:"resourceCount,omitempty,string"`
1592
1593	// ForceSendFields is a list of field names (e.g. "FhirStore") to
1594	// unconditionally include in API requests. By default, fields with
1595	// empty values are omitted from API requests. However, any non-pointer,
1596	// non-interface field appearing in ForceSendFields will be sent to the
1597	// server regardless of whether the field is empty or not. This may be
1598	// used to include empty fields in Patch requests.
1599	ForceSendFields []string `json:"-"`
1600
1601	// NullFields is a list of field names (e.g. "FhirStore") to include in
1602	// API requests with the JSON null value. By default, fields with empty
1603	// values are omitted from API requests. However, any field with an
1604	// empty value appearing in NullFields will be sent to the server as
1605	// null. It is an error if a field in this list has a non-empty value.
1606	// This may be used to include null fields in Patch requests.
1607	NullFields []string `json:"-"`
1608}
1609
1610func (s *GoogleCloudHealthcareV1beta1FhirRestExportResourcesResponse) MarshalJSON() ([]byte, error) {
1611	type NoMethod GoogleCloudHealthcareV1beta1FhirRestExportResourcesResponse
1612	raw := NoMethod(*s)
1613	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1614}
1615
1616// GoogleCloudHealthcareV1beta1FhirRestGcsDestination: The configuration
1617// for exporting to Cloud Storage.
1618type GoogleCloudHealthcareV1beta1FhirRestGcsDestination struct {
1619	// UriPrefix: URI for a Cloud Storage directory where result files
1620	// should be written (in
1621	// the format `gs://{bucket-id}/{path/to/destination/dir}`). If there is
1622	// no
1623	// trailing slash, the service will append one when composing the object
1624	// path.
1625	// The user is responsible for creating the Cloud Storage bucket
1626	// referenced in
1627	// `uri_prefix`.
1628	UriPrefix string `json:"uriPrefix,omitempty"`
1629
1630	// ForceSendFields is a list of field names (e.g. "UriPrefix") to
1631	// unconditionally include in API requests. By default, fields with
1632	// empty values are omitted from API requests. However, any non-pointer,
1633	// non-interface field appearing in ForceSendFields will be sent to the
1634	// server regardless of whether the field is empty or not. This may be
1635	// used to include empty fields in Patch requests.
1636	ForceSendFields []string `json:"-"`
1637
1638	// NullFields is a list of field names (e.g. "UriPrefix") to include in
1639	// API requests with the JSON null value. By default, fields with empty
1640	// values are omitted from API requests. However, any field with an
1641	// empty value appearing in NullFields will be sent to the server as
1642	// null. It is an error if a field in this list has a non-empty value.
1643	// This may be used to include null fields in Patch requests.
1644	NullFields []string `json:"-"`
1645}
1646
1647func (s *GoogleCloudHealthcareV1beta1FhirRestGcsDestination) MarshalJSON() ([]byte, error) {
1648	type NoMethod GoogleCloudHealthcareV1beta1FhirRestGcsDestination
1649	raw := NoMethod(*s)
1650	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1651}
1652
1653// GoogleCloudHealthcareV1beta1FhirRestGcsSource: Specifies the
1654// configuration for importing data from Cloud Storage.
1655type GoogleCloudHealthcareV1beta1FhirRestGcsSource struct {
1656	// Uri: Points to a Cloud Storage URI containing file(s) to import.
1657	//
1658	// The URI must be in the following format:
1659	// `gs://{bucket_id}/{object_id}`.
1660	// The URI can include wildcards in `object_id` and thus identify
1661	// multiple
1662	// files. Supported wildcards:
1663	//
1664	// *  `*` to match 0 or more non-separator characters
1665	// *  `**` to match 0 or more characters (including separators). Must be
1666	// used
1667	// at the end of a path and with no other wildcards in the
1668	// path. Can also be used with a file extension (such as .ndjson),
1669	// which
1670	// imports all files with the extension in the specified directory
1671	// and
1672	// its sub-directories. For example,
1673	// `gs://my-bucket/my-directory/**.ndjson`
1674	// imports all files with `.ndjson` extensions in `my-directory/` and
1675	// its
1676	// sub-directories.
1677	// *  `?` to match 1 character
1678	//
1679	// Files matching the wildcard are expected to contain content only,
1680	// no
1681	// metadata.
1682	Uri string `json:"uri,omitempty"`
1683
1684	// ForceSendFields is a list of field names (e.g. "Uri") to
1685	// unconditionally include in API requests. By default, fields with
1686	// empty values are omitted from API requests. However, any non-pointer,
1687	// non-interface field appearing in ForceSendFields will be sent to the
1688	// server regardless of whether the field is empty or not. This may be
1689	// used to include empty fields in Patch requests.
1690	ForceSendFields []string `json:"-"`
1691
1692	// NullFields is a list of field names (e.g. "Uri") to include in API
1693	// requests with the JSON null value. By default, fields with empty
1694	// values are omitted from API requests. However, any field with an
1695	// empty value appearing in NullFields will be sent to the server as
1696	// null. It is an error if a field in this list has a non-empty value.
1697	// This may be used to include null fields in Patch requests.
1698	NullFields []string `json:"-"`
1699}
1700
1701func (s *GoogleCloudHealthcareV1beta1FhirRestGcsSource) MarshalJSON() ([]byte, error) {
1702	type NoMethod GoogleCloudHealthcareV1beta1FhirRestGcsSource
1703	raw := NoMethod(*s)
1704	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1705}
1706
1707// GoogleCloudHealthcareV1beta1FhirRestImportResourcesErrorDetails:
1708// Error response of importing resources.
1709// This structure will be included in the
1710// error details to describe the
1711// detailed error. It will only be included when the operation finishes
1712// with
1713// some failure.
1714type GoogleCloudHealthcareV1beta1FhirRestImportResourcesErrorDetails struct {
1715	// ErrorCount: The number of resources that had errors.
1716	ErrorCount int64 `json:"errorCount,omitempty,string"`
1717
1718	// FhirStore: The name of the FHIR store where resources have been
1719	// imported, in
1720	// the
1721	// format
1722	// `projects/{project_id}/locations/{location_id}/datasets/{da
1723	// taset_id}/fhirStores/{fhir_store_id}`.
1724	FhirStore string `json:"fhirStore,omitempty"`
1725
1726	// InputSize: The total number of resources included in the source data.
1727	// This is the sum
1728	// of the success and error counts.
1729	InputSize int64 `json:"inputSize,omitempty,string"`
1730
1731	// SuccessCount: The number of resources that have been imported.
1732	SuccessCount int64 `json:"successCount,omitempty,string"`
1733
1734	// ForceSendFields is a list of field names (e.g. "ErrorCount") to
1735	// unconditionally include in API requests. By default, fields with
1736	// empty values are omitted from API requests. However, any non-pointer,
1737	// non-interface field appearing in ForceSendFields will be sent to the
1738	// server regardless of whether the field is empty or not. This may be
1739	// used to include empty fields in Patch requests.
1740	ForceSendFields []string `json:"-"`
1741
1742	// NullFields is a list of field names (e.g. "ErrorCount") to include in
1743	// API requests with the JSON null value. By default, fields with empty
1744	// values are omitted from API requests. However, any field with an
1745	// empty value appearing in NullFields will be sent to the server as
1746	// null. It is an error if a field in this list has a non-empty value.
1747	// This may be used to include null fields in Patch requests.
1748	NullFields []string `json:"-"`
1749}
1750
1751func (s *GoogleCloudHealthcareV1beta1FhirRestImportResourcesErrorDetails) MarshalJSON() ([]byte, error) {
1752	type NoMethod GoogleCloudHealthcareV1beta1FhirRestImportResourcesErrorDetails
1753	raw := NoMethod(*s)
1754	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1755}
1756
1757// GoogleCloudHealthcareV1beta1FhirRestImportResourcesResponse: Final
1758// response of importing resources.
1759// This structure will be included in the
1760// response to describe the detailed
1761// outcome. It will only be included when the operation finishes
1762// successfully.
1763type GoogleCloudHealthcareV1beta1FhirRestImportResourcesResponse struct {
1764	// FhirStore: The name of the FHIR store where the resources have been
1765	// imported, in
1766	// the
1767	// format
1768	// `projects/{project_id}/locations/{location_id}/datasets/{da
1769	// taset_id}/fhirStores/{fhir_store_id}`.
1770	FhirStore string `json:"fhirStore,omitempty"`
1771
1772	// InputSize: The total number of resources included in the source data.
1773	InputSize int64 `json:"inputSize,omitempty,string"`
1774
1775	// ForceSendFields is a list of field names (e.g. "FhirStore") to
1776	// unconditionally include in API requests. By default, fields with
1777	// empty values are omitted from API requests. However, any non-pointer,
1778	// non-interface field appearing in ForceSendFields will be sent to the
1779	// server regardless of whether the field is empty or not. This may be
1780	// used to include empty fields in Patch requests.
1781	ForceSendFields []string `json:"-"`
1782
1783	// NullFields is a list of field names (e.g. "FhirStore") to include in
1784	// API requests with the JSON null value. By default, fields with empty
1785	// values are omitted from API requests. However, any field with an
1786	// empty value appearing in NullFields will be sent to the server as
1787	// null. It is an error if a field in this list has a non-empty value.
1788	// This may be used to include null fields in Patch requests.
1789	NullFields []string `json:"-"`
1790}
1791
1792func (s *GoogleCloudHealthcareV1beta1FhirRestImportResourcesResponse) MarshalJSON() ([]byte, error) {
1793	type NoMethod GoogleCloudHealthcareV1beta1FhirRestImportResourcesResponse
1794	raw := NoMethod(*s)
1795	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1796}
1797
1798// Hl7V2Store: Represents an HL7v2 store.
1799type Hl7V2Store struct {
1800	// Labels: User-supplied key-value pairs used to organize HL7v2
1801	// stores.
1802	//
1803	// Label keys must be between 1 and 63 characters long, have a UTF-8
1804	// encoding
1805	// of maximum 128 bytes, and must conform to the
1806	// following PCRE regular expression:
1807	// \p{Ll}\p{Lo}{0,62}
1808	//
1809	// Label values are optional, must be between 1 and 63 characters long,
1810	// have
1811	// a UTF-8 encoding of maximum 128 bytes, and must conform to
1812	// the
1813	// following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
1814	//
1815	// No more than 64 labels can be associated with a given store.
1816	Labels map[string]string `json:"labels,omitempty"`
1817
1818	// Name: Output only. Resource name of the HL7v2 store, of the
1819	// form
1820	// `projects/{project_id}/datasets/{dataset_id}/hl7V2Stores/{hl7v2_s
1821	// tore_id}`.
1822	Name string `json:"name,omitempty"`
1823
1824	// NotificationConfig: The notification destination all messages (both
1825	// Ingest & Create) are
1826	// published on. Only the message name is sent as part of the
1827	// notification. If
1828	// this is unset, no notifications will be sent. Supplied by the client.
1829	NotificationConfig *NotificationConfig `json:"notificationConfig,omitempty"`
1830
1831	// ParserConfig: The configuration for the parser. It determines how the
1832	// server parses the
1833	// messages.
1834	ParserConfig *ParserConfig `json:"parserConfig,omitempty"`
1835
1836	// ServerResponse contains the HTTP response code and headers from the
1837	// server.
1838	googleapi.ServerResponse `json:"-"`
1839
1840	// ForceSendFields is a list of field names (e.g. "Labels") to
1841	// unconditionally include in API requests. By default, fields with
1842	// empty values are omitted from API requests. However, any non-pointer,
1843	// non-interface field appearing in ForceSendFields will be sent to the
1844	// server regardless of whether the field is empty or not. This may be
1845	// used to include empty fields in Patch requests.
1846	ForceSendFields []string `json:"-"`
1847
1848	// NullFields is a list of field names (e.g. "Labels") to include in API
1849	// requests with the JSON null value. By default, fields with empty
1850	// values are omitted from API requests. However, any field with an
1851	// empty value appearing in NullFields will be sent to the server as
1852	// null. It is an error if a field in this list has a non-empty value.
1853	// This may be used to include null fields in Patch requests.
1854	NullFields []string `json:"-"`
1855}
1856
1857func (s *Hl7V2Store) MarshalJSON() ([]byte, error) {
1858	type NoMethod Hl7V2Store
1859	raw := NoMethod(*s)
1860	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1861}
1862
1863// HttpBody: Message that represents an arbitrary HTTP body. It should
1864// only be used for
1865// payload formats that can't be represented as JSON, such as raw binary
1866// or
1867// an HTML page.
1868//
1869//
1870// This message can be used both in streaming and non-streaming API
1871// methods in
1872// the request as well as the response.
1873//
1874// It can be used as a top-level request field, which is convenient if
1875// one
1876// wants to extract parameters from either the URL or HTTP template into
1877// the
1878// request fields and also want access to the raw HTTP body.
1879//
1880// Example:
1881//
1882//     message GetResourceRequest {
1883//       // A unique request id.
1884//       string request_id = 1;
1885//
1886//       // The raw HTTP body is bound to this field.
1887//       google.api.HttpBody http_body = 2;
1888//     }
1889//
1890//     service ResourceService {
1891//       rpc GetResource(GetResourceRequest) returns
1892// (google.api.HttpBody);
1893//       rpc UpdateResource(google.api.HttpBody) returns
1894//       (google.protobuf.Empty);
1895//     }
1896//
1897// Example with streaming methods:
1898//
1899//     service CaldavService {
1900//       rpc GetCalendar(stream google.api.HttpBody)
1901//         returns (stream google.api.HttpBody);
1902//       rpc UpdateCalendar(stream google.api.HttpBody)
1903//         returns (stream google.api.HttpBody);
1904//     }
1905//
1906// Use of this type only changes how the request and response bodies
1907// are
1908// handled, all other features will continue to work unchanged.
1909type HttpBody struct {
1910	// ContentType: The HTTP Content-Type header value specifying the
1911	// content type of the body.
1912	ContentType string `json:"contentType,omitempty"`
1913
1914	// Data: The HTTP request/response body as raw binary.
1915	Data string `json:"data,omitempty"`
1916
1917	// Extensions: Application specific response metadata. Must be set in
1918	// the first response
1919	// for streaming APIs.
1920	Extensions []googleapi.RawMessage `json:"extensions,omitempty"`
1921
1922	// ServerResponse contains the HTTP response code and headers from the
1923	// server.
1924	googleapi.ServerResponse `json:"-"`
1925
1926	// ForceSendFields is a list of field names (e.g. "ContentType") to
1927	// unconditionally include in API requests. By default, fields with
1928	// empty values are omitted from API requests. However, any non-pointer,
1929	// non-interface field appearing in ForceSendFields will be sent to the
1930	// server regardless of whether the field is empty or not. This may be
1931	// used to include empty fields in Patch requests.
1932	ForceSendFields []string `json:"-"`
1933
1934	// NullFields is a list of field names (e.g. "ContentType") to include
1935	// in API requests with the JSON null value. By default, fields with
1936	// empty values are omitted from API requests. However, any field with
1937	// an empty value appearing in NullFields will be sent to the server as
1938	// null. It is an error if a field in this list has a non-empty value.
1939	// This may be used to include null fields in Patch requests.
1940	NullFields []string `json:"-"`
1941}
1942
1943func (s *HttpBody) MarshalJSON() ([]byte, error) {
1944	type NoMethod HttpBody
1945	raw := NoMethod(*s)
1946	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1947}
1948
1949// ImageConfig: Specifies how de-identification of image pixel should be
1950// handled.
1951type ImageConfig struct {
1952	// TextRedactionMode: Determines how to redact text from image.
1953	//
1954	// Possible values:
1955	//   "TEXT_REDACTION_MODE_UNSPECIFIED" - No text redaction specified.
1956	// Same as REDACT_NO_TEXT.
1957	//   "REDACT_ALL_TEXT" - Redact all text.
1958	//   "REDACT_SENSITIVE_TEXT" - Redact sensitive text.
1959	//   "REDACT_NO_TEXT" - Do not redact text.
1960	TextRedactionMode string `json:"textRedactionMode,omitempty"`
1961
1962	// ForceSendFields is a list of field names (e.g. "TextRedactionMode")
1963	// to unconditionally include in API requests. By default, fields with
1964	// empty values are omitted from API requests. However, any non-pointer,
1965	// non-interface field appearing in ForceSendFields will be sent to the
1966	// server regardless of whether the field is empty or not. This may be
1967	// used to include empty fields in Patch requests.
1968	ForceSendFields []string `json:"-"`
1969
1970	// NullFields is a list of field names (e.g. "TextRedactionMode") to
1971	// include in API requests with the JSON null value. By default, fields
1972	// with empty values are omitted from API requests. However, any field
1973	// with an empty value appearing in NullFields will be sent to the
1974	// server as null. It is an error if a field in this list has a
1975	// non-empty value. This may be used to include null fields in Patch
1976	// requests.
1977	NullFields []string `json:"-"`
1978}
1979
1980func (s *ImageConfig) MarshalJSON() ([]byte, error) {
1981	type NoMethod ImageConfig
1982	raw := NoMethod(*s)
1983	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1984}
1985
1986// ImportDicomDataErrorDetails: Returns the errors encountered during
1987// DICOM store import.
1988type ImportDicomDataErrorDetails struct {
1989	// SampleErrors: Deprecated. Use only for debugging purposes.
1990	//
1991	// Contains sample errors encountered in imports of individual
1992	// resources
1993	// (for example, a Cloud Storage object).
1994	SampleErrors []*ErrorDetail `json:"sampleErrors,omitempty"`
1995
1996	// ForceSendFields is a list of field names (e.g. "SampleErrors") to
1997	// unconditionally include in API requests. By default, fields with
1998	// empty values are omitted from API requests. However, any non-pointer,
1999	// non-interface field appearing in ForceSendFields will be sent to the
2000	// server regardless of whether the field is empty or not. This may be
2001	// used to include empty fields in Patch requests.
2002	ForceSendFields []string `json:"-"`
2003
2004	// NullFields is a list of field names (e.g. "SampleErrors") to include
2005	// in API requests with the JSON null value. By default, fields with
2006	// empty values are omitted from API requests. However, any field with
2007	// an empty value appearing in NullFields will be sent to the server as
2008	// null. It is an error if a field in this list has a non-empty value.
2009	// This may be used to include null fields in Patch requests.
2010	NullFields []string `json:"-"`
2011}
2012
2013func (s *ImportDicomDataErrorDetails) MarshalJSON() ([]byte, error) {
2014	type NoMethod ImportDicomDataErrorDetails
2015	raw := NoMethod(*s)
2016	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2017}
2018
2019// ImportDicomDataRequest: Imports data into the specified DICOM
2020// store.
2021// Returns an error if any of the files to import are not DICOM files.
2022// This
2023// API will accept duplicate DICOM instances, by simply ignoring the
2024// newly
2025// pushed instance (it will not overwrite).
2026type ImportDicomDataRequest struct {
2027	// GcsSource: Cloud Storage source data location and import
2028	// configuration.
2029	//
2030	// The Cloud Storage location requires the
2031	// `roles/storage.objectViewer`
2032	// Cloud IAM role.
2033	GcsSource *GoogleCloudHealthcareV1beta1DicomGcsSource `json:"gcsSource,omitempty"`
2034
2035	// ForceSendFields is a list of field names (e.g. "GcsSource") to
2036	// unconditionally include in API requests. By default, fields with
2037	// empty values are omitted from API requests. However, any non-pointer,
2038	// non-interface field appearing in ForceSendFields will be sent to the
2039	// server regardless of whether the field is empty or not. This may be
2040	// used to include empty fields in Patch requests.
2041	ForceSendFields []string `json:"-"`
2042
2043	// NullFields is a list of field names (e.g. "GcsSource") to include in
2044	// API requests with the JSON null value. By default, fields with empty
2045	// values are omitted from API requests. However, any field with an
2046	// empty value appearing in NullFields will be sent to the server as
2047	// null. It is an error if a field in this list has a non-empty value.
2048	// This may be used to include null fields in Patch requests.
2049	NullFields []string `json:"-"`
2050}
2051
2052func (s *ImportDicomDataRequest) MarshalJSON() ([]byte, error) {
2053	type NoMethod ImportDicomDataRequest
2054	raw := NoMethod(*s)
2055	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2056}
2057
2058// ImportResourcesRequest: Request to import resources.
2059type ImportResourcesRequest struct {
2060	// ContentStructure: The content structure in the source location. If
2061	// not specified, the server
2062	// treats the input source files as BUNDLE.
2063	//
2064	// Possible values:
2065	//   "CONTENT_STRUCTURE_UNSPECIFIED"
2066	//   "BUNDLE" - The source file contains one or more lines of
2067	// newline-delimited JSON
2068	// (ndjson). Each line is a bundle, which contains one or more
2069	// resources.
2070	// Set the bundle type to `history` to import resource versions.
2071	//   "RESOURCE" - The source file contains one or more lines of
2072	// newline-delimited JSON
2073	// (ndjson). Each line is a single resource.
2074	ContentStructure string `json:"contentStructure,omitempty"`
2075
2076	// GcsSource: Cloud Storage source data location and import
2077	// configuration.
2078	//
2079	// The Cloud Storage location requires the
2080	// `roles/storage.objectViewer`
2081	// Cloud IAM role.
2082	//
2083	// Each Cloud Storage object should be a text file that contains the
2084	// format
2085	// specified in ContentStructure.
2086	GcsSource *GoogleCloudHealthcareV1beta1FhirRestGcsSource `json:"gcsSource,omitempty"`
2087
2088	// ForceSendFields is a list of field names (e.g. "ContentStructure") to
2089	// unconditionally include in API requests. By default, fields with
2090	// empty values are omitted from API requests. However, any non-pointer,
2091	// non-interface field appearing in ForceSendFields will be sent to the
2092	// server regardless of whether the field is empty or not. This may be
2093	// used to include empty fields in Patch requests.
2094	ForceSendFields []string `json:"-"`
2095
2096	// NullFields is a list of field names (e.g. "ContentStructure") to
2097	// include in API requests with the JSON null value. By default, fields
2098	// with empty values are omitted from API requests. However, any field
2099	// with an empty value appearing in NullFields will be sent to the
2100	// server as null. It is an error if a field in this list has a
2101	// non-empty value. This may be used to include null fields in Patch
2102	// requests.
2103	NullFields []string `json:"-"`
2104}
2105
2106func (s *ImportResourcesRequest) MarshalJSON() ([]byte, error) {
2107	type NoMethod ImportResourcesRequest
2108	raw := NoMethod(*s)
2109	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2110}
2111
2112// InfoTypeTransformation: A transformation to apply to text that is
2113// identified as a specific
2114// info_type.
2115type InfoTypeTransformation struct {
2116	// CharacterMaskConfig: Config for character mask.
2117	CharacterMaskConfig *CharacterMaskConfig `json:"characterMaskConfig,omitempty"`
2118
2119	// CryptoHashConfig: Config for crypto hash.
2120	CryptoHashConfig *CryptoHashConfig `json:"cryptoHashConfig,omitempty"`
2121
2122	// DateShiftConfig: Config for date shift.
2123	DateShiftConfig *DateShiftConfig `json:"dateShiftConfig,omitempty"`
2124
2125	// InfoTypes: InfoTypes to apply this transformation to. If this is not
2126	// specified, the
2127	// transformation applies to any info_type.
2128	InfoTypes []string `json:"infoTypes,omitempty"`
2129
2130	// RedactConfig: Config for text redaction.
2131	RedactConfig *RedactConfig `json:"redactConfig,omitempty"`
2132
2133	// ReplaceWithInfoTypeConfig: Config for replace with InfoType.
2134	ReplaceWithInfoTypeConfig *ReplaceWithInfoTypeConfig `json:"replaceWithInfoTypeConfig,omitempty"`
2135
2136	// ForceSendFields is a list of field names (e.g. "CharacterMaskConfig")
2137	// to unconditionally include in API requests. By default, fields with
2138	// empty values are omitted from API requests. However, any non-pointer,
2139	// non-interface field appearing in ForceSendFields will be sent to the
2140	// server regardless of whether the field is empty or not. This may be
2141	// used to include empty fields in Patch requests.
2142	ForceSendFields []string `json:"-"`
2143
2144	// NullFields is a list of field names (e.g. "CharacterMaskConfig") to
2145	// include in API requests with the JSON null value. By default, fields
2146	// with empty values are omitted from API requests. However, any field
2147	// with an empty value appearing in NullFields will be sent to the
2148	// server as null. It is an error if a field in this list has a
2149	// non-empty value. This may be used to include null fields in Patch
2150	// requests.
2151	NullFields []string `json:"-"`
2152}
2153
2154func (s *InfoTypeTransformation) MarshalJSON() ([]byte, error) {
2155	type NoMethod InfoTypeTransformation
2156	raw := NoMethod(*s)
2157	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2158}
2159
2160// IngestMessageRequest: Ingests a message into the specified HL7v2
2161// store.
2162type IngestMessageRequest struct {
2163	// Message: HL7v2 message to ingest.
2164	Message *Message `json:"message,omitempty"`
2165
2166	// ForceSendFields is a list of field names (e.g. "Message") to
2167	// unconditionally include in API requests. By default, fields with
2168	// empty values are omitted from API requests. However, any non-pointer,
2169	// non-interface field appearing in ForceSendFields will be sent to the
2170	// server regardless of whether the field is empty or not. This may be
2171	// used to include empty fields in Patch requests.
2172	ForceSendFields []string `json:"-"`
2173
2174	// NullFields is a list of field names (e.g. "Message") to include in
2175	// API requests with the JSON null value. By default, fields with empty
2176	// values are omitted from API requests. However, any field with an
2177	// empty value appearing in NullFields will be sent to the server as
2178	// null. It is an error if a field in this list has a non-empty value.
2179	// This may be used to include null fields in Patch requests.
2180	NullFields []string `json:"-"`
2181}
2182
2183func (s *IngestMessageRequest) MarshalJSON() ([]byte, error) {
2184	type NoMethod IngestMessageRequest
2185	raw := NoMethod(*s)
2186	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2187}
2188
2189// IngestMessageResponse: Acknowledges that a message has been ingested
2190// into the specified
2191// HL7v2 store.
2192type IngestMessageResponse struct {
2193	// Hl7Ack: HL7v2 ACK message.
2194	Hl7Ack string `json:"hl7Ack,omitempty"`
2195
2196	// Message: Created message resource.
2197	Message *Message `json:"message,omitempty"`
2198
2199	// ServerResponse contains the HTTP response code and headers from the
2200	// server.
2201	googleapi.ServerResponse `json:"-"`
2202
2203	// ForceSendFields is a list of field names (e.g. "Hl7Ack") to
2204	// unconditionally include in API requests. By default, fields with
2205	// empty values are omitted from API requests. However, any non-pointer,
2206	// non-interface field appearing in ForceSendFields will be sent to the
2207	// server regardless of whether the field is empty or not. This may be
2208	// used to include empty fields in Patch requests.
2209	ForceSendFields []string `json:"-"`
2210
2211	// NullFields is a list of field names (e.g. "Hl7Ack") to include in API
2212	// requests with the JSON null value. By default, fields with empty
2213	// values are omitted from API requests. However, any field with an
2214	// empty value appearing in NullFields will be sent to the server as
2215	// null. It is an error if a field in this list has a non-empty value.
2216	// This may be used to include null fields in Patch requests.
2217	NullFields []string `json:"-"`
2218}
2219
2220func (s *IngestMessageResponse) MarshalJSON() ([]byte, error) {
2221	type NoMethod IngestMessageResponse
2222	raw := NoMethod(*s)
2223	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2224}
2225
2226// ListDatasetsResponse: Lists the available datasets.
2227type ListDatasetsResponse struct {
2228	// Datasets: The first page of datasets.
2229	Datasets []*Dataset `json:"datasets,omitempty"`
2230
2231	// NextPageToken: Token to retrieve the next page of results, or empty
2232	// if there are no
2233	// more results in the list.
2234	NextPageToken string `json:"nextPageToken,omitempty"`
2235
2236	// ServerResponse contains the HTTP response code and headers from the
2237	// server.
2238	googleapi.ServerResponse `json:"-"`
2239
2240	// ForceSendFields is a list of field names (e.g. "Datasets") to
2241	// unconditionally include in API requests. By default, fields with
2242	// empty values are omitted from API requests. However, any non-pointer,
2243	// non-interface field appearing in ForceSendFields will be sent to the
2244	// server regardless of whether the field is empty or not. This may be
2245	// used to include empty fields in Patch requests.
2246	ForceSendFields []string `json:"-"`
2247
2248	// NullFields is a list of field names (e.g. "Datasets") to include in
2249	// API requests with the JSON null value. By default, fields with empty
2250	// values are omitted from API requests. However, any field with an
2251	// empty value appearing in NullFields will be sent to the server as
2252	// null. It is an error if a field in this list has a non-empty value.
2253	// This may be used to include null fields in Patch requests.
2254	NullFields []string `json:"-"`
2255}
2256
2257func (s *ListDatasetsResponse) MarshalJSON() ([]byte, error) {
2258	type NoMethod ListDatasetsResponse
2259	raw := NoMethod(*s)
2260	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2261}
2262
2263// ListDicomStoresResponse: Lists the DICOM stores in the given dataset.
2264type ListDicomStoresResponse struct {
2265	// DicomStores: The returned DICOM stores. Won't be more DICOM stores
2266	// than the value of
2267	// page_size in the request.
2268	DicomStores []*DicomStore `json:"dicomStores,omitempty"`
2269
2270	// NextPageToken: Token to retrieve the next page of results or empty if
2271	// there are no more
2272	// results in the list.
2273	NextPageToken string `json:"nextPageToken,omitempty"`
2274
2275	// ServerResponse contains the HTTP response code and headers from the
2276	// server.
2277	googleapi.ServerResponse `json:"-"`
2278
2279	// ForceSendFields is a list of field names (e.g. "DicomStores") to
2280	// unconditionally include in API requests. By default, fields with
2281	// empty values are omitted from API requests. However, any non-pointer,
2282	// non-interface field appearing in ForceSendFields will be sent to the
2283	// server regardless of whether the field is empty or not. This may be
2284	// used to include empty fields in Patch requests.
2285	ForceSendFields []string `json:"-"`
2286
2287	// NullFields is a list of field names (e.g. "DicomStores") to include
2288	// in API requests with the JSON null value. By default, fields with
2289	// empty values are omitted from API requests. However, any field with
2290	// an empty value appearing in NullFields will be sent to the server as
2291	// null. It is an error if a field in this list has a non-empty value.
2292	// This may be used to include null fields in Patch requests.
2293	NullFields []string `json:"-"`
2294}
2295
2296func (s *ListDicomStoresResponse) MarshalJSON() ([]byte, error) {
2297	type NoMethod ListDicomStoresResponse
2298	raw := NoMethod(*s)
2299	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2300}
2301
2302// ListFhirStoresResponse: Lists the FHIR stores in the given dataset.
2303type ListFhirStoresResponse struct {
2304	// FhirStores: The returned FHIR stores. Won't be more FHIR stores than
2305	// the value of
2306	// page_size in the request.
2307	FhirStores []*FhirStore `json:"fhirStores,omitempty"`
2308
2309	// NextPageToken: Token to retrieve the next page of results or empty if
2310	// there are no more
2311	// results in the list.
2312	NextPageToken string `json:"nextPageToken,omitempty"`
2313
2314	// ServerResponse contains the HTTP response code and headers from the
2315	// server.
2316	googleapi.ServerResponse `json:"-"`
2317
2318	// ForceSendFields is a list of field names (e.g. "FhirStores") to
2319	// unconditionally include in API requests. By default, fields with
2320	// empty values are omitted from API requests. However, any non-pointer,
2321	// non-interface field appearing in ForceSendFields will be sent to the
2322	// server regardless of whether the field is empty or not. This may be
2323	// used to include empty fields in Patch requests.
2324	ForceSendFields []string `json:"-"`
2325
2326	// NullFields is a list of field names (e.g. "FhirStores") to include in
2327	// API requests with the JSON null value. By default, fields with empty
2328	// values are omitted from API requests. However, any field with an
2329	// empty value appearing in NullFields will be sent to the server as
2330	// null. It is an error if a field in this list has a non-empty value.
2331	// This may be used to include null fields in Patch requests.
2332	NullFields []string `json:"-"`
2333}
2334
2335func (s *ListFhirStoresResponse) MarshalJSON() ([]byte, error) {
2336	type NoMethod ListFhirStoresResponse
2337	raw := NoMethod(*s)
2338	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2339}
2340
2341// ListHl7V2StoresResponse: Lists the HL7v2 stores in the given dataset.
2342type ListHl7V2StoresResponse struct {
2343	// Hl7V2Stores: The returned HL7v2 stores. Won't be more HL7v2 stores
2344	// than the value of
2345	// page_size in the request.
2346	Hl7V2Stores []*Hl7V2Store `json:"hl7V2Stores,omitempty"`
2347
2348	// NextPageToken: Token to retrieve the next page of results or empty if
2349	// there are no more
2350	// results in the list.
2351	NextPageToken string `json:"nextPageToken,omitempty"`
2352
2353	// ServerResponse contains the HTTP response code and headers from the
2354	// server.
2355	googleapi.ServerResponse `json:"-"`
2356
2357	// ForceSendFields is a list of field names (e.g. "Hl7V2Stores") to
2358	// unconditionally include in API requests. By default, fields with
2359	// empty values are omitted from API requests. However, any non-pointer,
2360	// non-interface field appearing in ForceSendFields will be sent to the
2361	// server regardless of whether the field is empty or not. This may be
2362	// used to include empty fields in Patch requests.
2363	ForceSendFields []string `json:"-"`
2364
2365	// NullFields is a list of field names (e.g. "Hl7V2Stores") to include
2366	// in API requests with the JSON null value. By default, fields with
2367	// empty values are omitted from API requests. However, any field with
2368	// an empty value appearing in NullFields will be sent to the server as
2369	// null. It is an error if a field in this list has a non-empty value.
2370	// This may be used to include null fields in Patch requests.
2371	NullFields []string `json:"-"`
2372}
2373
2374func (s *ListHl7V2StoresResponse) MarshalJSON() ([]byte, error) {
2375	type NoMethod ListHl7V2StoresResponse
2376	raw := NoMethod(*s)
2377	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2378}
2379
2380// ListLocationsResponse: The response message for
2381// Locations.ListLocations.
2382type ListLocationsResponse struct {
2383	// Locations: A list of locations that matches the specified filter in
2384	// the request.
2385	Locations []*Location `json:"locations,omitempty"`
2386
2387	// NextPageToken: The standard List next-page token.
2388	NextPageToken string `json:"nextPageToken,omitempty"`
2389
2390	// ServerResponse contains the HTTP response code and headers from the
2391	// server.
2392	googleapi.ServerResponse `json:"-"`
2393
2394	// ForceSendFields is a list of field names (e.g. "Locations") to
2395	// unconditionally include in API requests. By default, fields with
2396	// empty values are omitted from API requests. However, any non-pointer,
2397	// non-interface field appearing in ForceSendFields will be sent to the
2398	// server regardless of whether the field is empty or not. This may be
2399	// used to include empty fields in Patch requests.
2400	ForceSendFields []string `json:"-"`
2401
2402	// NullFields is a list of field names (e.g. "Locations") to include in
2403	// API requests with the JSON null value. By default, fields with empty
2404	// values are omitted from API requests. However, any field with an
2405	// empty value appearing in NullFields will be sent to the server as
2406	// null. It is an error if a field in this list has a non-empty value.
2407	// This may be used to include null fields in Patch requests.
2408	NullFields []string `json:"-"`
2409}
2410
2411func (s *ListLocationsResponse) MarshalJSON() ([]byte, error) {
2412	type NoMethod ListLocationsResponse
2413	raw := NoMethod(*s)
2414	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2415}
2416
2417// ListMessagesResponse: Lists the messages in the specified HL7v2
2418// store.
2419type ListMessagesResponse struct {
2420	// Messages: The returned message names. Won't be more values than the
2421	// value of
2422	// page_size in the request.
2423	Messages []string `json:"messages,omitempty"`
2424
2425	// NextPageToken: Token to retrieve the next page of results or empty if
2426	// there are no more
2427	// results in the list.
2428	NextPageToken string `json:"nextPageToken,omitempty"`
2429
2430	// ServerResponse contains the HTTP response code and headers from the
2431	// server.
2432	googleapi.ServerResponse `json:"-"`
2433
2434	// ForceSendFields is a list of field names (e.g. "Messages") to
2435	// unconditionally include in API requests. By default, fields with
2436	// empty values are omitted from API requests. However, any non-pointer,
2437	// non-interface field appearing in ForceSendFields will be sent to the
2438	// server regardless of whether the field is empty or not. This may be
2439	// used to include empty fields in Patch requests.
2440	ForceSendFields []string `json:"-"`
2441
2442	// NullFields is a list of field names (e.g. "Messages") to include in
2443	// API requests with the JSON null value. By default, fields with empty
2444	// values are omitted from API requests. However, any field with an
2445	// empty value appearing in NullFields will be sent to the server as
2446	// null. It is an error if a field in this list has a non-empty value.
2447	// This may be used to include null fields in Patch requests.
2448	NullFields []string `json:"-"`
2449}
2450
2451func (s *ListMessagesResponse) MarshalJSON() ([]byte, error) {
2452	type NoMethod ListMessagesResponse
2453	raw := NoMethod(*s)
2454	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2455}
2456
2457// ListOperationsResponse: The response message for
2458// Operations.ListOperations.
2459type ListOperationsResponse struct {
2460	// NextPageToken: The standard List next-page token.
2461	NextPageToken string `json:"nextPageToken,omitempty"`
2462
2463	// Operations: A list of operations that matches the specified filter in
2464	// the request.
2465	Operations []*Operation `json:"operations,omitempty"`
2466
2467	// ServerResponse contains the HTTP response code and headers from the
2468	// server.
2469	googleapi.ServerResponse `json:"-"`
2470
2471	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
2472	// unconditionally include in API requests. By default, fields with
2473	// empty values are omitted from API requests. However, any non-pointer,
2474	// non-interface field appearing in ForceSendFields will be sent to the
2475	// server regardless of whether the field is empty or not. This may be
2476	// used to include empty fields in Patch requests.
2477	ForceSendFields []string `json:"-"`
2478
2479	// NullFields is a list of field names (e.g. "NextPageToken") to include
2480	// in API requests with the JSON null value. By default, fields with
2481	// empty values are omitted from API requests. However, any field with
2482	// an empty value appearing in NullFields will be sent to the server as
2483	// null. It is an error if a field in this list has a non-empty value.
2484	// This may be used to include null fields in Patch requests.
2485	NullFields []string `json:"-"`
2486}
2487
2488func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) {
2489	type NoMethod ListOperationsResponse
2490	raw := NoMethod(*s)
2491	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2492}
2493
2494// Location: A resource that represents Google Cloud Platform location.
2495type Location struct {
2496	// DisplayName: The friendly name for this location, typically a nearby
2497	// city name.
2498	// For example, "Tokyo".
2499	DisplayName string `json:"displayName,omitempty"`
2500
2501	// Labels: Cross-service attributes for the location. For example
2502	//
2503	//     {"cloud.googleapis.com/region": "us-east1"}
2504	Labels map[string]string `json:"labels,omitempty"`
2505
2506	// LocationId: The canonical id for this location. For example:
2507	// "us-east1".
2508	LocationId string `json:"locationId,omitempty"`
2509
2510	// Metadata: Service-specific metadata. For example the available
2511	// capacity at the given
2512	// location.
2513	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
2514
2515	// Name: Resource name for the location, which may vary between
2516	// implementations.
2517	// For example: "projects/example-project/locations/us-east1"
2518	Name string `json:"name,omitempty"`
2519
2520	// ServerResponse contains the HTTP response code and headers from the
2521	// server.
2522	googleapi.ServerResponse `json:"-"`
2523
2524	// ForceSendFields is a list of field names (e.g. "DisplayName") to
2525	// unconditionally include in API requests. By default, fields with
2526	// empty values are omitted from API requests. However, any non-pointer,
2527	// non-interface field appearing in ForceSendFields will be sent to the
2528	// server regardless of whether the field is empty or not. This may be
2529	// used to include empty fields in Patch requests.
2530	ForceSendFields []string `json:"-"`
2531
2532	// NullFields is a list of field names (e.g. "DisplayName") to include
2533	// in API requests with the JSON null value. By default, fields with
2534	// empty values are omitted from API requests. However, any field with
2535	// an empty value appearing in NullFields will be sent to the server as
2536	// null. It is an error if a field in this list has a non-empty value.
2537	// This may be used to include null fields in Patch requests.
2538	NullFields []string `json:"-"`
2539}
2540
2541func (s *Location) MarshalJSON() ([]byte, error) {
2542	type NoMethod Location
2543	raw := NoMethod(*s)
2544	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2545}
2546
2547// Message: A complete HL7v2 message.
2548// See http://www.hl7.org/implement/standards/index.cfm?ref=common for
2549// details
2550// on the standard.
2551type Message struct {
2552	// CreateTime: Output only. The datetime when the message was created.
2553	// Set by the server.
2554	CreateTime string `json:"createTime,omitempty"`
2555
2556	// Data: Raw message bytes.
2557	Data string `json:"data,omitempty"`
2558
2559	// Labels: User-supplied key-value pairs used to organize HL7v2
2560	// stores.
2561	//
2562	// Label keys must be between 1 and 63 characters long, have a UTF-8
2563	// encoding
2564	// of maximum 128 bytes, and must conform to the
2565	// following PCRE regular expression:
2566	// \p{Ll}\p{Lo}{0,62}
2567	//
2568	// Label values are optional, must be between 1 and 63 characters long,
2569	// have
2570	// a UTF-8 encoding of maximum 128 bytes, and must conform to
2571	// the
2572	// following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
2573	//
2574	// No more than 64 labels can be associated with a given store.
2575	Labels map[string]string `json:"labels,omitempty"`
2576
2577	// MessageType: The message type and trigger event for this message.
2578	// MSH-9.
2579	MessageType string `json:"messageType,omitempty"`
2580
2581	// Name: Resource name of the Message, of the
2582	// form
2583	// `projects/{project_id}/datasets/{dataset_id}/hl7V2Stores/{hl7_v2_
2584	// store_id}/messages/{message_id}`.
2585	// Assigned by the server.
2586	Name string `json:"name,omitempty"`
2587
2588	// ParsedData: Output only. The parsed version of the raw message data.
2589	ParsedData *ParsedData `json:"parsedData,omitempty"`
2590
2591	// PatientIds: All patient IDs listed in the PID-2, PID-3, and PID-4
2592	// segments of this
2593	// message.
2594	PatientIds []*PatientId `json:"patientIds,omitempty"`
2595
2596	// SendFacility: The hospital that this message came from. MSH-4.
2597	SendFacility string `json:"sendFacility,omitempty"`
2598
2599	// SendTime: The datetime the sending application sent this message.
2600	// MSH-7.
2601	SendTime string `json:"sendTime,omitempty"`
2602
2603	// ServerResponse contains the HTTP response code and headers from the
2604	// server.
2605	googleapi.ServerResponse `json:"-"`
2606
2607	// ForceSendFields is a list of field names (e.g. "CreateTime") to
2608	// unconditionally include in API requests. By default, fields with
2609	// empty values are omitted from API requests. However, any non-pointer,
2610	// non-interface field appearing in ForceSendFields will be sent to the
2611	// server regardless of whether the field is empty or not. This may be
2612	// used to include empty fields in Patch requests.
2613	ForceSendFields []string `json:"-"`
2614
2615	// NullFields is a list of field names (e.g. "CreateTime") to include in
2616	// API requests with the JSON null value. By default, fields with empty
2617	// values are omitted from API requests. However, any field with an
2618	// empty value appearing in NullFields will be sent to the server as
2619	// null. It is an error if a field in this list has a non-empty value.
2620	// This may be used to include null fields in Patch requests.
2621	NullFields []string `json:"-"`
2622}
2623
2624func (s *Message) MarshalJSON() ([]byte, error) {
2625	type NoMethod Message
2626	raw := NoMethod(*s)
2627	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2628}
2629
2630// NotificationConfig: Specifies where notifications should be sent upon
2631// changes to a data store.
2632type NotificationConfig struct {
2633	// PubsubTopic: The [Cloud
2634	// Pub/Sub](https://cloud.google.com/pubsub/docs/) topic
2635	// that
2636	// notifications of changes are published on. Supplied by the
2637	// client.
2638	// PubsubMessage.Data will contain the resource
2639	// name.
2640	// PubsubMessage.MessageId is the ID of this message. It is guaranteed
2641	// to be
2642	// unique within the topic.
2643	// PubsubMessage.PublishTime is the time at which the message was
2644	// published.
2645	// Notifications are only sent if the topic is
2646	// non-empty.
2647	// [Topic
2648	// names](https://cloud.google.com/pubsub/docs/overview#names) must be
2649	// scoped
2650	// to a project. cloud-healthcare@system.gserviceaccount.com must
2651	// have
2652	// publisher permissions on the given Cloud Pub/Sub topic. Not having
2653	// adequate
2654	// permissions will cause the calls that send notifications to fail.
2655	PubsubTopic string `json:"pubsubTopic,omitempty"`
2656
2657	// ForceSendFields is a list of field names (e.g. "PubsubTopic") to
2658	// unconditionally include in API requests. By default, fields with
2659	// empty values are omitted from API requests. However, any non-pointer,
2660	// non-interface field appearing in ForceSendFields will be sent to the
2661	// server regardless of whether the field is empty or not. This may be
2662	// used to include empty fields in Patch requests.
2663	ForceSendFields []string `json:"-"`
2664
2665	// NullFields is a list of field names (e.g. "PubsubTopic") to include
2666	// in API requests with the JSON null value. By default, fields with
2667	// empty values are omitted from API requests. However, any field with
2668	// an empty value appearing in NullFields will be sent to the server as
2669	// null. It is an error if a field in this list has a non-empty value.
2670	// This may be used to include null fields in Patch requests.
2671	NullFields []string `json:"-"`
2672}
2673
2674func (s *NotificationConfig) MarshalJSON() ([]byte, error) {
2675	type NoMethod NotificationConfig
2676	raw := NoMethod(*s)
2677	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2678}
2679
2680// Operation: This resource represents a long-running operation that is
2681// the result of a
2682// network API call.
2683type Operation struct {
2684	// Done: If the value is `false`, it means the operation is still in
2685	// progress.
2686	// If `true`, the operation is completed, and either `error` or
2687	// `response` is
2688	// available.
2689	Done bool `json:"done,omitempty"`
2690
2691	// Error: The error result of the operation in case of failure or
2692	// cancellation.
2693	Error *Status `json:"error,omitempty"`
2694
2695	// Metadata: Service-specific metadata associated with the operation.
2696	// It typically
2697	// contains progress information and common metadata such as create
2698	// time.
2699	// Some services might not provide such metadata.  Any method that
2700	// returns a
2701	// long-running operation should document the metadata type, if any.
2702	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
2703
2704	// Name: The server-assigned name, which is only unique within the same
2705	// service that
2706	// originally returns it. If you use the default HTTP mapping,
2707	// the
2708	// `name` should be a resource name ending with
2709	// `operations/{unique_id}`.
2710	Name string `json:"name,omitempty"`
2711
2712	// Response: The normal response of the operation in case of success.
2713	// If the original
2714	// method returns no data on success, such as `Delete`, the response
2715	// is
2716	// `google.protobuf.Empty`.  If the original method is
2717	// standard
2718	// `Get`/`Create`/`Update`, the response should be the resource.  For
2719	// other
2720	// methods, the response should have the type `XxxResponse`, where
2721	// `Xxx`
2722	// is the original method name.  For example, if the original method
2723	// name
2724	// is `TakeSnapshot()`, the inferred response type
2725	// is
2726	// `TakeSnapshotResponse`.
2727	Response googleapi.RawMessage `json:"response,omitempty"`
2728
2729	// ServerResponse contains the HTTP response code and headers from the
2730	// server.
2731	googleapi.ServerResponse `json:"-"`
2732
2733	// ForceSendFields is a list of field names (e.g. "Done") to
2734	// unconditionally include in API requests. By default, fields with
2735	// empty values are omitted from API requests. However, any non-pointer,
2736	// non-interface field appearing in ForceSendFields will be sent to the
2737	// server regardless of whether the field is empty or not. This may be
2738	// used to include empty fields in Patch requests.
2739	ForceSendFields []string `json:"-"`
2740
2741	// NullFields is a list of field names (e.g. "Done") to include in API
2742	// requests with the JSON null value. By default, fields with empty
2743	// values are omitted from API requests. However, any field with an
2744	// empty value appearing in NullFields will be sent to the server as
2745	// null. It is an error if a field in this list has a non-empty value.
2746	// This may be used to include null fields in Patch requests.
2747	NullFields []string `json:"-"`
2748}
2749
2750func (s *Operation) MarshalJSON() ([]byte, error) {
2751	type NoMethod Operation
2752	raw := NoMethod(*s)
2753	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2754}
2755
2756// OperationMetadata: OperationMetadata provides information about the
2757// operation execution.
2758// Returned in the long-running operation's metadata field.
2759type OperationMetadata struct {
2760	// ApiMethodName: The name of the API method that initiated the
2761	// operation.
2762	ApiMethodName string `json:"apiMethodName,omitempty"`
2763
2764	Counter *ProgressCounter `json:"counter,omitempty"`
2765
2766	// CreateTime: The time at which the operation was created by the API.
2767	CreateTime string `json:"createTime,omitempty"`
2768
2769	// EndTime: The time at which execution was completed.
2770	EndTime string `json:"endTime,omitempty"`
2771
2772	// ForceSendFields is a list of field names (e.g. "ApiMethodName") to
2773	// unconditionally include in API requests. By default, fields with
2774	// empty values are omitted from API requests. However, any non-pointer,
2775	// non-interface field appearing in ForceSendFields will be sent to the
2776	// server regardless of whether the field is empty or not. This may be
2777	// used to include empty fields in Patch requests.
2778	ForceSendFields []string `json:"-"`
2779
2780	// NullFields is a list of field names (e.g. "ApiMethodName") to include
2781	// in API requests with the JSON null value. By default, fields with
2782	// empty values are omitted from API requests. However, any field with
2783	// an empty value appearing in NullFields will be sent to the server as
2784	// null. It is an error if a field in this list has a non-empty value.
2785	// This may be used to include null fields in Patch requests.
2786	NullFields []string `json:"-"`
2787}
2788
2789func (s *OperationMetadata) MarshalJSON() ([]byte, error) {
2790	type NoMethod OperationMetadata
2791	raw := NoMethod(*s)
2792	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2793}
2794
2795// ParsedData: The content of a HL7v2 message in a structured format.
2796type ParsedData struct {
2797	Segments []*Segment `json:"segments,omitempty"`
2798
2799	// ForceSendFields is a list of field names (e.g. "Segments") to
2800	// unconditionally include in API requests. By default, fields with
2801	// empty values are omitted from API requests. However, any non-pointer,
2802	// non-interface field appearing in ForceSendFields will be sent to the
2803	// server regardless of whether the field is empty or not. This may be
2804	// used to include empty fields in Patch requests.
2805	ForceSendFields []string `json:"-"`
2806
2807	// NullFields is a list of field names (e.g. "Segments") to include in
2808	// API requests with the JSON null value. By default, fields with empty
2809	// values are omitted from API requests. However, any field with an
2810	// empty value appearing in NullFields will be sent to the server as
2811	// null. It is an error if a field in this list has a non-empty value.
2812	// This may be used to include null fields in Patch requests.
2813	NullFields []string `json:"-"`
2814}
2815
2816func (s *ParsedData) MarshalJSON() ([]byte, error) {
2817	type NoMethod ParsedData
2818	raw := NoMethod(*s)
2819	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2820}
2821
2822// ParserConfig: The configuration for the parser. It determines how the
2823// server parses the
2824// messages.
2825type ParserConfig struct {
2826	// AllowNullHeader: Determines whether messages with no header are
2827	// allowed.
2828	AllowNullHeader bool `json:"allowNullHeader,omitempty"`
2829
2830	// SegmentTerminator: Byte(s) to be used as the segment terminator. If
2831	// this is unset, '\r' will
2832	// be used as segment terminator.
2833	SegmentTerminator string `json:"segmentTerminator,omitempty"`
2834
2835	// ForceSendFields is a list of field names (e.g. "AllowNullHeader") to
2836	// unconditionally include in API requests. By default, fields with
2837	// empty values are omitted from API requests. However, any non-pointer,
2838	// non-interface field appearing in ForceSendFields will be sent to the
2839	// server regardless of whether the field is empty or not. This may be
2840	// used to include empty fields in Patch requests.
2841	ForceSendFields []string `json:"-"`
2842
2843	// NullFields is a list of field names (e.g. "AllowNullHeader") to
2844	// include in API requests with the JSON null value. By default, fields
2845	// with empty values are omitted from API requests. However, any field
2846	// with an empty value appearing in NullFields will be sent to the
2847	// server as null. It is an error if a field in this list has a
2848	// non-empty value. This may be used to include null fields in Patch
2849	// requests.
2850	NullFields []string `json:"-"`
2851}
2852
2853func (s *ParserConfig) MarshalJSON() ([]byte, error) {
2854	type NoMethod ParserConfig
2855	raw := NoMethod(*s)
2856	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2857}
2858
2859// PatientId: A patient identifier and associated type.
2860type PatientId struct {
2861	// Type: ID type, e.g. MRN or NHS.
2862	Type string `json:"type,omitempty"`
2863
2864	// Value: The patient's unique identifier.
2865	Value string `json:"value,omitempty"`
2866
2867	// ForceSendFields is a list of field names (e.g. "Type") to
2868	// unconditionally include in API requests. By default, fields with
2869	// empty values are omitted from API requests. However, any non-pointer,
2870	// non-interface field appearing in ForceSendFields will be sent to the
2871	// server regardless of whether the field is empty or not. This may be
2872	// used to include empty fields in Patch requests.
2873	ForceSendFields []string `json:"-"`
2874
2875	// NullFields is a list of field names (e.g. "Type") to include in API
2876	// requests with the JSON null value. By default, fields with empty
2877	// values are omitted from API requests. However, any field with an
2878	// empty value appearing in NullFields will be sent to the server as
2879	// null. It is an error if a field in this list has a non-empty value.
2880	// This may be used to include null fields in Patch requests.
2881	NullFields []string `json:"-"`
2882}
2883
2884func (s *PatientId) MarshalJSON() ([]byte, error) {
2885	type NoMethod PatientId
2886	raw := NoMethod(*s)
2887	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2888}
2889
2890// Policy: Defines an Identity and Access Management (IAM) policy. It is
2891// used to
2892// specify access control policies for Cloud Platform resources.
2893//
2894//
2895// A `Policy` consists of a list of `bindings`. A `binding` binds a list
2896// of
2897// `members` to a `role`, where the members can be user accounts, Google
2898// groups,
2899// Google domains, and service accounts. A `role` is a named list of
2900// permissions
2901// defined by IAM.
2902//
2903// **JSON Example**
2904//
2905//     {
2906//       "bindings": [
2907//         {
2908//           "role": "roles/owner",
2909//           "members": [
2910//             "user:mike@example.com",
2911//             "group:admins@example.com",
2912//             "domain:google.com",
2913//
2914// "serviceAccount:my-other-app@appspot.gserviceaccount.com"
2915//           ]
2916//         },
2917//         {
2918//           "role": "roles/viewer",
2919//           "members": ["user:sean@example.com"]
2920//         }
2921//       ]
2922//     }
2923//
2924// **YAML Example**
2925//
2926//     bindings:
2927//     - members:
2928//       - user:mike@example.com
2929//       - group:admins@example.com
2930//       - domain:google.com
2931//       - serviceAccount:my-other-app@appspot.gserviceaccount.com
2932//       role: roles/owner
2933//     - members:
2934//       - user:sean@example.com
2935//       role: roles/viewer
2936//
2937//
2938// For a description of IAM and its features, see the
2939// [IAM developer's guide](https://cloud.google.com/iam/docs).
2940type Policy struct {
2941	// AuditConfigs: Specifies cloud audit logging configuration for this
2942	// policy.
2943	AuditConfigs []*AuditConfig `json:"auditConfigs,omitempty"`
2944
2945	// Bindings: Associates a list of `members` to a `role`.
2946	// `bindings` with no members will result in an error.
2947	Bindings []*Binding `json:"bindings,omitempty"`
2948
2949	// Etag: `etag` is used for optimistic concurrency control as a way to
2950	// help
2951	// prevent simultaneous updates of a policy from overwriting each
2952	// other.
2953	// It is strongly suggested that systems make use of the `etag` in
2954	// the
2955	// read-modify-write cycle to perform policy updates in order to avoid
2956	// race
2957	// conditions: An `etag` is returned in the response to `getIamPolicy`,
2958	// and
2959	// systems are expected to put that etag in the request to
2960	// `setIamPolicy` to
2961	// ensure that their change will be applied to the same version of the
2962	// policy.
2963	//
2964	// If no `etag` is provided in the call to `setIamPolicy`, then the
2965	// existing
2966	// policy is overwritten blindly.
2967	Etag string `json:"etag,omitempty"`
2968
2969	// Version: Deprecated.
2970	Version int64 `json:"version,omitempty"`
2971
2972	// ServerResponse contains the HTTP response code and headers from the
2973	// server.
2974	googleapi.ServerResponse `json:"-"`
2975
2976	// ForceSendFields is a list of field names (e.g. "AuditConfigs") to
2977	// unconditionally include in API requests. By default, fields with
2978	// empty values are omitted from API requests. However, any non-pointer,
2979	// non-interface field appearing in ForceSendFields will be sent to the
2980	// server regardless of whether the field is empty or not. This may be
2981	// used to include empty fields in Patch requests.
2982	ForceSendFields []string `json:"-"`
2983
2984	// NullFields is a list of field names (e.g. "AuditConfigs") to include
2985	// in API requests with the JSON null value. By default, fields with
2986	// empty values are omitted from API requests. However, any field with
2987	// an empty value appearing in NullFields will be sent to the server as
2988	// null. It is an error if a field in this list has a non-empty value.
2989	// This may be used to include null fields in Patch requests.
2990	NullFields []string `json:"-"`
2991}
2992
2993func (s *Policy) MarshalJSON() ([]byte, error) {
2994	type NoMethod Policy
2995	raw := NoMethod(*s)
2996	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2997}
2998
2999// ProgressCounter: ProgressCounter provides counters to describe an
3000// operation's progress.
3001type ProgressCounter struct {
3002	// Failure: The number of units that failed in the operation.
3003	Failure int64 `json:"failure,omitempty,string"`
3004
3005	// Pending: The number of units that are pending in the operation.
3006	Pending int64 `json:"pending,omitempty,string"`
3007
3008	// Success: The number of units that succeeded in the operation.
3009	Success int64 `json:"success,omitempty,string"`
3010
3011	// ForceSendFields is a list of field names (e.g. "Failure") to
3012	// unconditionally include in API requests. By default, fields with
3013	// empty values are omitted from API requests. However, any non-pointer,
3014	// non-interface field appearing in ForceSendFields will be sent to the
3015	// server regardless of whether the field is empty or not. This may be
3016	// used to include empty fields in Patch requests.
3017	ForceSendFields []string `json:"-"`
3018
3019	// NullFields is a list of field names (e.g. "Failure") to include in
3020	// API requests with the JSON null value. By default, fields with empty
3021	// values are omitted from API requests. However, any field with an
3022	// empty value appearing in NullFields will be sent to the server as
3023	// null. It is an error if a field in this list has a non-empty value.
3024	// This may be used to include null fields in Patch requests.
3025	NullFields []string `json:"-"`
3026}
3027
3028func (s *ProgressCounter) MarshalJSON() ([]byte, error) {
3029	type NoMethod ProgressCounter
3030	raw := NoMethod(*s)
3031	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3032}
3033
3034// RedactConfig: Define how to redact sensitive values. Default
3035// behaviour is erase,
3036// e.g. "My name is Jake." becomes "My name is ."
3037type RedactConfig struct {
3038}
3039
3040// ReplaceWithInfoTypeConfig: When using the INSPECT_AND_TRANSFORM
3041// action, each match is replaced with
3042// the name of the info_type. For example, "My name is Jake" becomes "My
3043// name is
3044// [PERSON_NAME]." The TRANSFORM action is equivalent to redacting.
3045type ReplaceWithInfoTypeConfig struct {
3046}
3047
3048// SchemaConfig: Configuration for the FHIR BigQuery schema. Determines
3049// how the server
3050// generates the schema.
3051type SchemaConfig struct {
3052	// RecursiveStructureDepth: The depth for all recursive structures in
3053	// the output analytics
3054	// schema. For example, `concept` in the CodeSystem resource is a
3055	// recursive
3056	// structure; when the depth is 2, the CodeSystem table will have a
3057	// column
3058	// called `concept.concept` but not `concept.concept.concept`. If
3059	// not
3060	// specified or set to 0, the server will use the default value 2.
3061	RecursiveStructureDepth int64 `json:"recursiveStructureDepth,omitempty,string"`
3062
3063	// SchemaType: Specifies the output schema type. If unspecified, the
3064	// default is
3065	// `LOSSLESS`.
3066	//
3067	// Possible values:
3068	//   "SCHEMA_TYPE_UNSPECIFIED" - No schema type specified. Same as
3069	// `LOSSLESS`.
3070	//   "LOSSLESS" - A data-driven schema generated from the fields present
3071	// in the FHIR data
3072	// being exported, with no additional simplification.
3073	//   "ANALYTICS" - Analytics schema defined by the FHIR community.
3074	// See https://github.com/FHIR/sql-on-fhir/blob/master/sql-on-fhir.md.
3075	SchemaType string `json:"schemaType,omitempty"`
3076
3077	// ForceSendFields is a list of field names (e.g.
3078	// "RecursiveStructureDepth") to unconditionally include in API
3079	// requests. By default, fields with empty values are omitted from API
3080	// requests. However, any non-pointer, non-interface field appearing in
3081	// ForceSendFields will be sent to the server regardless of whether the
3082	// field is empty or not. This may be used to include empty fields in
3083	// Patch requests.
3084	ForceSendFields []string `json:"-"`
3085
3086	// NullFields is a list of field names (e.g. "RecursiveStructureDepth")
3087	// to include in API requests with the JSON null value. By default,
3088	// fields with empty values are omitted from API requests. However, any
3089	// field with an empty value appearing in NullFields will be sent to the
3090	// server as null. It is an error if a field in this list has a
3091	// non-empty value. This may be used to include null fields in Patch
3092	// requests.
3093	NullFields []string `json:"-"`
3094}
3095
3096func (s *SchemaConfig) MarshalJSON() ([]byte, error) {
3097	type NoMethod SchemaConfig
3098	raw := NoMethod(*s)
3099	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3100}
3101
3102// SearchResourcesRequest: Request to search the resources in the
3103// specified FHIR store.
3104type SearchResourcesRequest struct {
3105	// ResourceType: The FHIR resource type to search, such as Patient or
3106	// Observation. For a
3107	// complete list, see the [FHIR
3108	// Resource
3109	// Index](http://hl7.org/implement/standards/fhir/STU3/resourcel
3110	// ist.html).
3111	ResourceType string `json:"resourceType,omitempty"`
3112
3113	// ForceSendFields is a list of field names (e.g. "ResourceType") to
3114	// unconditionally include in API requests. By default, fields with
3115	// empty values are omitted from API requests. However, any non-pointer,
3116	// non-interface field appearing in ForceSendFields will be sent to the
3117	// server regardless of whether the field is empty or not. This may be
3118	// used to include empty fields in Patch requests.
3119	ForceSendFields []string `json:"-"`
3120
3121	// NullFields is a list of field names (e.g. "ResourceType") to include
3122	// in API requests with the JSON null value. By default, fields with
3123	// empty values are omitted from API requests. However, any field with
3124	// an empty value appearing in NullFields will be sent to the server as
3125	// null. It is an error if a field in this list has a non-empty value.
3126	// This may be used to include null fields in Patch requests.
3127	NullFields []string `json:"-"`
3128}
3129
3130func (s *SearchResourcesRequest) MarshalJSON() ([]byte, error) {
3131	type NoMethod SearchResourcesRequest
3132	raw := NoMethod(*s)
3133	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3134}
3135
3136// Segment: A segment in a structured format.
3137type Segment struct {
3138	// Fields: A mapping from the positional location to the value.
3139	// The key string uses zero-based indexes separated by dots to
3140	// identify
3141	// Fields, components and sub-components. A bracket notation is also
3142	// used to
3143	// identify different instances of a repeated field.
3144	// Regex for key: (\d+)(\[\d+\])?(.\d+)?(.\d+)?
3145	//
3146	// Examples of (key, value) pairs:
3147	// - (0.1, "foo"): Component 1 of Field 0 has the value "foo".
3148	// - (1.1.2, "bar"): Sub-component 2 of Component 1 of field 1 has the
3149	// value
3150	// "bar".
3151	// - (1[2].1, "baz"): Component 1 of Instance 2 of Field 1, which is
3152	// repeated,
3153	// has the value "baz".
3154	Fields map[string]string `json:"fields,omitempty"`
3155
3156	// SegmentId: A string that indicates the type of segment, e.g., EVN,
3157	// PID.
3158	SegmentId string `json:"segmentId,omitempty"`
3159
3160	// SetId: Set ID for segments that can be in a set. This can be empty if
3161	// it is
3162	// missing or it is not applicable.
3163	SetId string `json:"setId,omitempty"`
3164
3165	// ForceSendFields is a list of field names (e.g. "Fields") to
3166	// unconditionally include in API requests. By default, fields with
3167	// empty values are omitted from API requests. However, any non-pointer,
3168	// non-interface field appearing in ForceSendFields will be sent to the
3169	// server regardless of whether the field is empty or not. This may be
3170	// used to include empty fields in Patch requests.
3171	ForceSendFields []string `json:"-"`
3172
3173	// NullFields is a list of field names (e.g. "Fields") to include in API
3174	// requests with the JSON null value. By default, fields with empty
3175	// values are omitted from API requests. However, any field with an
3176	// empty value appearing in NullFields will be sent to the server as
3177	// null. It is an error if a field in this list has a non-empty value.
3178	// This may be used to include null fields in Patch requests.
3179	NullFields []string `json:"-"`
3180}
3181
3182func (s *Segment) MarshalJSON() ([]byte, error) {
3183	type NoMethod Segment
3184	raw := NoMethod(*s)
3185	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3186}
3187
3188// SetIamPolicyRequest: Request message for `SetIamPolicy` method.
3189type SetIamPolicyRequest struct {
3190	// Policy: REQUIRED: The complete policy to be applied to the
3191	// `resource`. The size of
3192	// the policy is limited to a few 10s of KB. An empty policy is a
3193	// valid policy but certain Cloud Platform services (such as
3194	// Projects)
3195	// might reject them.
3196	Policy *Policy `json:"policy,omitempty"`
3197
3198	// UpdateMask: OPTIONAL: A FieldMask specifying which fields of the
3199	// policy to modify. Only
3200	// the fields in the mask will be modified. If no mask is provided,
3201	// the
3202	// following default mask is used:
3203	// paths: "bindings, etag"
3204	// This field is only used by Cloud IAM.
3205	UpdateMask string `json:"updateMask,omitempty"`
3206
3207	// ForceSendFields is a list of field names (e.g. "Policy") to
3208	// unconditionally include in API requests. By default, fields with
3209	// empty values are omitted from API requests. However, any non-pointer,
3210	// non-interface field appearing in ForceSendFields will be sent to the
3211	// server regardless of whether the field is empty or not. This may be
3212	// used to include empty fields in Patch requests.
3213	ForceSendFields []string `json:"-"`
3214
3215	// NullFields is a list of field names (e.g. "Policy") to include in API
3216	// requests with the JSON null value. By default, fields with empty
3217	// values are omitted from API requests. However, any field with an
3218	// empty value appearing in NullFields will be sent to the server as
3219	// null. It is an error if a field in this list has a non-empty value.
3220	// This may be used to include null fields in Patch requests.
3221	NullFields []string `json:"-"`
3222}
3223
3224func (s *SetIamPolicyRequest) MarshalJSON() ([]byte, error) {
3225	type NoMethod SetIamPolicyRequest
3226	raw := NoMethod(*s)
3227	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3228}
3229
3230// Status: The `Status` type defines a logical error model that is
3231// suitable for
3232// different programming environments, including REST APIs and RPC APIs.
3233// It is
3234// used by [gRPC](https://github.com/grpc). Each `Status` message
3235// contains
3236// three pieces of data: error code, error message, and error
3237// details.
3238//
3239// You can find out more about this error model and how to work with it
3240// in the
3241// [API Design Guide](https://cloud.google.com/apis/design/errors).
3242type Status struct {
3243	// Code: The status code, which should be an enum value of
3244	// google.rpc.Code.
3245	Code int64 `json:"code,omitempty"`
3246
3247	// Details: A list of messages that carry the error details.  There is a
3248	// common set of
3249	// message types for APIs to use.
3250	Details []googleapi.RawMessage `json:"details,omitempty"`
3251
3252	// Message: A developer-facing error message, which should be in
3253	// English. Any
3254	// user-facing error message should be localized and sent in
3255	// the
3256	// google.rpc.Status.details field, or localized by the client.
3257	Message string `json:"message,omitempty"`
3258
3259	// ForceSendFields is a list of field names (e.g. "Code") to
3260	// unconditionally include in API requests. By default, fields with
3261	// empty values are omitted from API requests. However, any non-pointer,
3262	// non-interface field appearing in ForceSendFields will be sent to the
3263	// server regardless of whether the field is empty or not. This may be
3264	// used to include empty fields in Patch requests.
3265	ForceSendFields []string `json:"-"`
3266
3267	// NullFields is a list of field names (e.g. "Code") to include in API
3268	// requests with the JSON null value. By default, fields with empty
3269	// values are omitted from API requests. However, any field with an
3270	// empty value appearing in NullFields will be sent to the server as
3271	// null. It is an error if a field in this list has a non-empty value.
3272	// This may be used to include null fields in Patch requests.
3273	NullFields []string `json:"-"`
3274}
3275
3276func (s *Status) MarshalJSON() ([]byte, error) {
3277	type NoMethod Status
3278	raw := NoMethod(*s)
3279	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3280}
3281
3282// TagFilterList: List of tags to be filtered.
3283type TagFilterList struct {
3284	// Tags: Tags to be filtered. Tags must be DICOM Data Elements, File
3285	// Meta
3286	// Elements, or Directory Structuring Elements, as defined
3287	// at:
3288	// http://dicom.nema.org/medical/dicom/current/output/html/part06.htm
3289	// l#table_6-1,.
3290	// They may be provided by "Keyword" or "Tag". For example
3291	// "PatientID",
3292	// "00100010".
3293	Tags []string `json:"tags,omitempty"`
3294
3295	// ForceSendFields is a list of field names (e.g. "Tags") to
3296	// unconditionally include in API requests. By default, fields with
3297	// empty values are omitted from API requests. However, any non-pointer,
3298	// non-interface field appearing in ForceSendFields will be sent to the
3299	// server regardless of whether the field is empty or not. This may be
3300	// used to include empty fields in Patch requests.
3301	ForceSendFields []string `json:"-"`
3302
3303	// NullFields is a list of field names (e.g. "Tags") to include in API
3304	// requests with the JSON null value. By default, fields with empty
3305	// values are omitted from API requests. However, any field with an
3306	// empty value appearing in NullFields will be sent to the server as
3307	// null. It is an error if a field in this list has a non-empty value.
3308	// This may be used to include null fields in Patch requests.
3309	NullFields []string `json:"-"`
3310}
3311
3312func (s *TagFilterList) MarshalJSON() ([]byte, error) {
3313	type NoMethod TagFilterList
3314	raw := NoMethod(*s)
3315	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3316}
3317
3318// TestIamPermissionsRequest: Request message for `TestIamPermissions`
3319// method.
3320type TestIamPermissionsRequest struct {
3321	// Permissions: The set of permissions to check for the `resource`.
3322	// Permissions with
3323	// wildcards (such as '*' or 'storage.*') are not allowed. For
3324	// more
3325	// information see
3326	// [IAM
3327	// Overview](https://cloud.google.com/iam/docs/overview#permissions).
3328	Permissions []string `json:"permissions,omitempty"`
3329
3330	// ForceSendFields is a list of field names (e.g. "Permissions") to
3331	// unconditionally include in API requests. By default, fields with
3332	// empty values are omitted from API requests. However, any non-pointer,
3333	// non-interface field appearing in ForceSendFields will be sent to the
3334	// server regardless of whether the field is empty or not. This may be
3335	// used to include empty fields in Patch requests.
3336	ForceSendFields []string `json:"-"`
3337
3338	// NullFields is a list of field names (e.g. "Permissions") to include
3339	// in API requests with the JSON null value. By default, fields with
3340	// empty values are omitted from API requests. However, any field with
3341	// an empty value appearing in NullFields will be sent to the server as
3342	// null. It is an error if a field in this list has a non-empty value.
3343	// This may be used to include null fields in Patch requests.
3344	NullFields []string `json:"-"`
3345}
3346
3347func (s *TestIamPermissionsRequest) MarshalJSON() ([]byte, error) {
3348	type NoMethod TestIamPermissionsRequest
3349	raw := NoMethod(*s)
3350	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3351}
3352
3353// TestIamPermissionsResponse: Response message for `TestIamPermissions`
3354// method.
3355type TestIamPermissionsResponse struct {
3356	// Permissions: A subset of `TestPermissionsRequest.permissions` that
3357	// the caller is
3358	// allowed.
3359	Permissions []string `json:"permissions,omitempty"`
3360
3361	// ServerResponse contains the HTTP response code and headers from the
3362	// server.
3363	googleapi.ServerResponse `json:"-"`
3364
3365	// ForceSendFields is a list of field names (e.g. "Permissions") to
3366	// unconditionally include in API requests. By default, fields with
3367	// empty values are omitted from API requests. However, any non-pointer,
3368	// non-interface field appearing in ForceSendFields will be sent to the
3369	// server regardless of whether the field is empty or not. This may be
3370	// used to include empty fields in Patch requests.
3371	ForceSendFields []string `json:"-"`
3372
3373	// NullFields is a list of field names (e.g. "Permissions") to include
3374	// in API requests with the JSON null value. By default, fields with
3375	// empty values are omitted from API requests. However, any field with
3376	// an empty value appearing in NullFields will be sent to the server as
3377	// null. It is an error if a field in this list has a non-empty value.
3378	// This may be used to include null fields in Patch requests.
3379	NullFields []string `json:"-"`
3380}
3381
3382func (s *TestIamPermissionsResponse) MarshalJSON() ([]byte, error) {
3383	type NoMethod TestIamPermissionsResponse
3384	raw := NoMethod(*s)
3385	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3386}
3387
3388type TextConfig struct {
3389	// Transformations: The transformations to apply to the detected data.
3390	Transformations []*InfoTypeTransformation `json:"transformations,omitempty"`
3391
3392	// ForceSendFields is a list of field names (e.g. "Transformations") to
3393	// unconditionally include in API requests. By default, fields with
3394	// empty values are omitted from API requests. However, any non-pointer,
3395	// non-interface field appearing in ForceSendFields will be sent to the
3396	// server regardless of whether the field is empty or not. This may be
3397	// used to include empty fields in Patch requests.
3398	ForceSendFields []string `json:"-"`
3399
3400	// NullFields is a list of field names (e.g. "Transformations") to
3401	// include in API requests with the JSON null value. By default, fields
3402	// with empty values are omitted from API requests. However, any field
3403	// with an empty value appearing in NullFields will be sent to the
3404	// server as null. It is an error if a field in this list has a
3405	// non-empty value. This may be used to include null fields in Patch
3406	// requests.
3407	NullFields []string `json:"-"`
3408}
3409
3410func (s *TextConfig) MarshalJSON() ([]byte, error) {
3411	type NoMethod TextConfig
3412	raw := NoMethod(*s)
3413	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3414}
3415
3416// method id "healthcare.projects.locations.get":
3417
3418type ProjectsLocationsGetCall struct {
3419	s            *Service
3420	name         string
3421	urlParams_   gensupport.URLParams
3422	ifNoneMatch_ string
3423	ctx_         context.Context
3424	header_      http.Header
3425}
3426
3427// Get: Gets information about a location.
3428func (r *ProjectsLocationsService) Get(name string) *ProjectsLocationsGetCall {
3429	c := &ProjectsLocationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
3430	c.name = name
3431	return c
3432}
3433
3434// Fields allows partial responses to be retrieved. See
3435// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
3436// for more information.
3437func (c *ProjectsLocationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsGetCall {
3438	c.urlParams_.Set("fields", googleapi.CombineFields(s))
3439	return c
3440}
3441
3442// IfNoneMatch sets the optional parameter which makes the operation
3443// fail if the object's ETag matches the given value. This is useful for
3444// getting updates only after the object has changed since the last
3445// request. Use googleapi.IsNotModified to check whether the response
3446// error from Do is the result of In-None-Match.
3447func (c *ProjectsLocationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsGetCall {
3448	c.ifNoneMatch_ = entityTag
3449	return c
3450}
3451
3452// Context sets the context to be used in this call's Do method. Any
3453// pending HTTP request will be aborted if the provided context is
3454// canceled.
3455func (c *ProjectsLocationsGetCall) Context(ctx context.Context) *ProjectsLocationsGetCall {
3456	c.ctx_ = ctx
3457	return c
3458}
3459
3460// Header returns an http.Header that can be modified by the caller to
3461// add HTTP headers to the request.
3462func (c *ProjectsLocationsGetCall) Header() http.Header {
3463	if c.header_ == nil {
3464		c.header_ = make(http.Header)
3465	}
3466	return c.header_
3467}
3468
3469func (c *ProjectsLocationsGetCall) doRequest(alt string) (*http.Response, error) {
3470	reqHeaders := make(http.Header)
3471	for k, v := range c.header_ {
3472		reqHeaders[k] = v
3473	}
3474	reqHeaders.Set("User-Agent", c.s.userAgent())
3475	if c.ifNoneMatch_ != "" {
3476		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
3477	}
3478	var body io.Reader = nil
3479	c.urlParams_.Set("alt", alt)
3480	c.urlParams_.Set("prettyPrint", "false")
3481	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
3482	urls += "?" + c.urlParams_.Encode()
3483	req, err := http.NewRequest("GET", urls, body)
3484	if err != nil {
3485		return nil, err
3486	}
3487	req.Header = reqHeaders
3488	googleapi.Expand(req.URL, map[string]string{
3489		"name": c.name,
3490	})
3491	return gensupport.SendRequest(c.ctx_, c.s.client, req)
3492}
3493
3494// Do executes the "healthcare.projects.locations.get" call.
3495// Exactly one of *Location or error will be non-nil. Any non-2xx status
3496// code is an error. Response headers are in either
3497// *Location.ServerResponse.Header or (if a response was returned at
3498// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
3499// to check whether the returned error was because
3500// http.StatusNotModified was returned.
3501func (c *ProjectsLocationsGetCall) Do(opts ...googleapi.CallOption) (*Location, error) {
3502	gensupport.SetOptions(c.urlParams_, opts...)
3503	res, err := c.doRequest("json")
3504	if res != nil && res.StatusCode == http.StatusNotModified {
3505		if res.Body != nil {
3506			res.Body.Close()
3507		}
3508		return nil, &googleapi.Error{
3509			Code:   res.StatusCode,
3510			Header: res.Header,
3511		}
3512	}
3513	if err != nil {
3514		return nil, err
3515	}
3516	defer googleapi.CloseBody(res)
3517	if err := googleapi.CheckResponse(res); err != nil {
3518		return nil, err
3519	}
3520	ret := &Location{
3521		ServerResponse: googleapi.ServerResponse{
3522			Header:         res.Header,
3523			HTTPStatusCode: res.StatusCode,
3524		},
3525	}
3526	target := &ret
3527	if err := gensupport.DecodeResponse(target, res); err != nil {
3528		return nil, err
3529	}
3530	return ret, nil
3531	// {
3532	//   "description": "Gets information about a location.",
3533	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}",
3534	//   "httpMethod": "GET",
3535	//   "id": "healthcare.projects.locations.get",
3536	//   "parameterOrder": [
3537	//     "name"
3538	//   ],
3539	//   "parameters": {
3540	//     "name": {
3541	//       "description": "Resource name for the location.",
3542	//       "location": "path",
3543	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
3544	//       "required": true,
3545	//       "type": "string"
3546	//     }
3547	//   },
3548	//   "path": "v1beta1/{+name}",
3549	//   "response": {
3550	//     "$ref": "Location"
3551	//   },
3552	//   "scopes": [
3553	//     "https://www.googleapis.com/auth/cloud-platform"
3554	//   ]
3555	// }
3556
3557}
3558
3559// method id "healthcare.projects.locations.list":
3560
3561type ProjectsLocationsListCall struct {
3562	s            *Service
3563	name         string
3564	urlParams_   gensupport.URLParams
3565	ifNoneMatch_ string
3566	ctx_         context.Context
3567	header_      http.Header
3568}
3569
3570// List: Lists information about the supported locations for this
3571// service.
3572func (r *ProjectsLocationsService) List(name string) *ProjectsLocationsListCall {
3573	c := &ProjectsLocationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
3574	c.name = name
3575	return c
3576}
3577
3578// Filter sets the optional parameter "filter": The standard list
3579// filter.
3580func (c *ProjectsLocationsListCall) Filter(filter string) *ProjectsLocationsListCall {
3581	c.urlParams_.Set("filter", filter)
3582	return c
3583}
3584
3585// PageSize sets the optional parameter "pageSize": The standard list
3586// page size.
3587func (c *ProjectsLocationsListCall) PageSize(pageSize int64) *ProjectsLocationsListCall {
3588	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
3589	return c
3590}
3591
3592// PageToken sets the optional parameter "pageToken": The standard list
3593// page token.
3594func (c *ProjectsLocationsListCall) PageToken(pageToken string) *ProjectsLocationsListCall {
3595	c.urlParams_.Set("pageToken", pageToken)
3596	return c
3597}
3598
3599// Fields allows partial responses to be retrieved. See
3600// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
3601// for more information.
3602func (c *ProjectsLocationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsListCall {
3603	c.urlParams_.Set("fields", googleapi.CombineFields(s))
3604	return c
3605}
3606
3607// IfNoneMatch sets the optional parameter which makes the operation
3608// fail if the object's ETag matches the given value. This is useful for
3609// getting updates only after the object has changed since the last
3610// request. Use googleapi.IsNotModified to check whether the response
3611// error from Do is the result of In-None-Match.
3612func (c *ProjectsLocationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsListCall {
3613	c.ifNoneMatch_ = entityTag
3614	return c
3615}
3616
3617// Context sets the context to be used in this call's Do method. Any
3618// pending HTTP request will be aborted if the provided context is
3619// canceled.
3620func (c *ProjectsLocationsListCall) Context(ctx context.Context) *ProjectsLocationsListCall {
3621	c.ctx_ = ctx
3622	return c
3623}
3624
3625// Header returns an http.Header that can be modified by the caller to
3626// add HTTP headers to the request.
3627func (c *ProjectsLocationsListCall) Header() http.Header {
3628	if c.header_ == nil {
3629		c.header_ = make(http.Header)
3630	}
3631	return c.header_
3632}
3633
3634func (c *ProjectsLocationsListCall) doRequest(alt string) (*http.Response, error) {
3635	reqHeaders := make(http.Header)
3636	for k, v := range c.header_ {
3637		reqHeaders[k] = v
3638	}
3639	reqHeaders.Set("User-Agent", c.s.userAgent())
3640	if c.ifNoneMatch_ != "" {
3641		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
3642	}
3643	var body io.Reader = nil
3644	c.urlParams_.Set("alt", alt)
3645	c.urlParams_.Set("prettyPrint", "false")
3646	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}/locations")
3647	urls += "?" + c.urlParams_.Encode()
3648	req, err := http.NewRequest("GET", urls, body)
3649	if err != nil {
3650		return nil, err
3651	}
3652	req.Header = reqHeaders
3653	googleapi.Expand(req.URL, map[string]string{
3654		"name": c.name,
3655	})
3656	return gensupport.SendRequest(c.ctx_, c.s.client, req)
3657}
3658
3659// Do executes the "healthcare.projects.locations.list" call.
3660// Exactly one of *ListLocationsResponse or error will be non-nil. Any
3661// non-2xx status code is an error. Response headers are in either
3662// *ListLocationsResponse.ServerResponse.Header or (if a response was
3663// returned at all) in error.(*googleapi.Error).Header. Use
3664// googleapi.IsNotModified to check whether the returned error was
3665// because http.StatusNotModified was returned.
3666func (c *ProjectsLocationsListCall) Do(opts ...googleapi.CallOption) (*ListLocationsResponse, error) {
3667	gensupport.SetOptions(c.urlParams_, opts...)
3668	res, err := c.doRequest("json")
3669	if res != nil && res.StatusCode == http.StatusNotModified {
3670		if res.Body != nil {
3671			res.Body.Close()
3672		}
3673		return nil, &googleapi.Error{
3674			Code:   res.StatusCode,
3675			Header: res.Header,
3676		}
3677	}
3678	if err != nil {
3679		return nil, err
3680	}
3681	defer googleapi.CloseBody(res)
3682	if err := googleapi.CheckResponse(res); err != nil {
3683		return nil, err
3684	}
3685	ret := &ListLocationsResponse{
3686		ServerResponse: googleapi.ServerResponse{
3687			Header:         res.Header,
3688			HTTPStatusCode: res.StatusCode,
3689		},
3690	}
3691	target := &ret
3692	if err := gensupport.DecodeResponse(target, res); err != nil {
3693		return nil, err
3694	}
3695	return ret, nil
3696	// {
3697	//   "description": "Lists information about the supported locations for this service.",
3698	//   "flatPath": "v1beta1/projects/{projectsId}/locations",
3699	//   "httpMethod": "GET",
3700	//   "id": "healthcare.projects.locations.list",
3701	//   "parameterOrder": [
3702	//     "name"
3703	//   ],
3704	//   "parameters": {
3705	//     "filter": {
3706	//       "description": "The standard list filter.",
3707	//       "location": "query",
3708	//       "type": "string"
3709	//     },
3710	//     "name": {
3711	//       "description": "The resource that owns the locations collection, if applicable.",
3712	//       "location": "path",
3713	//       "pattern": "^projects/[^/]+$",
3714	//       "required": true,
3715	//       "type": "string"
3716	//     },
3717	//     "pageSize": {
3718	//       "description": "The standard list page size.",
3719	//       "format": "int32",
3720	//       "location": "query",
3721	//       "type": "integer"
3722	//     },
3723	//     "pageToken": {
3724	//       "description": "The standard list page token.",
3725	//       "location": "query",
3726	//       "type": "string"
3727	//     }
3728	//   },
3729	//   "path": "v1beta1/{+name}/locations",
3730	//   "response": {
3731	//     "$ref": "ListLocationsResponse"
3732	//   },
3733	//   "scopes": [
3734	//     "https://www.googleapis.com/auth/cloud-platform"
3735	//   ]
3736	// }
3737
3738}
3739
3740// Pages invokes f for each page of results.
3741// A non-nil error returned from f will halt the iteration.
3742// The provided context supersedes any context provided to the Context method.
3743func (c *ProjectsLocationsListCall) Pages(ctx context.Context, f func(*ListLocationsResponse) error) error {
3744	c.ctx_ = ctx
3745	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
3746	for {
3747		x, err := c.Do()
3748		if err != nil {
3749			return err
3750		}
3751		if err := f(x); err != nil {
3752			return err
3753		}
3754		if x.NextPageToken == "" {
3755			return nil
3756		}
3757		c.PageToken(x.NextPageToken)
3758	}
3759}
3760
3761// method id "healthcare.projects.locations.datasets.create":
3762
3763type ProjectsLocationsDatasetsCreateCall struct {
3764	s          *Service
3765	parent     string
3766	dataset    *Dataset
3767	urlParams_ gensupport.URLParams
3768	ctx_       context.Context
3769	header_    http.Header
3770}
3771
3772// Create: Creates a new health dataset. Results are returned through
3773// the
3774// Operation interface which returns either an
3775// `Operation.response` which contains a Dataset or
3776// `Operation.error`. The metadata
3777// field type is OperationMetadata.
3778// A Google Cloud Platform project can contain up to 500 datasets across
3779// all
3780// regions.
3781func (r *ProjectsLocationsDatasetsService) Create(parent string, dataset *Dataset) *ProjectsLocationsDatasetsCreateCall {
3782	c := &ProjectsLocationsDatasetsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
3783	c.parent = parent
3784	c.dataset = dataset
3785	return c
3786}
3787
3788// DatasetId sets the optional parameter "datasetId": The ID of the
3789// dataset that is being created.
3790// The string must match the following regex:
3791// `[\p{L}\p{N}_\-\.]{1,256}`.
3792func (c *ProjectsLocationsDatasetsCreateCall) DatasetId(datasetId string) *ProjectsLocationsDatasetsCreateCall {
3793	c.urlParams_.Set("datasetId", datasetId)
3794	return c
3795}
3796
3797// Fields allows partial responses to be retrieved. See
3798// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
3799// for more information.
3800func (c *ProjectsLocationsDatasetsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsCreateCall {
3801	c.urlParams_.Set("fields", googleapi.CombineFields(s))
3802	return c
3803}
3804
3805// Context sets the context to be used in this call's Do method. Any
3806// pending HTTP request will be aborted if the provided context is
3807// canceled.
3808func (c *ProjectsLocationsDatasetsCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsCreateCall {
3809	c.ctx_ = ctx
3810	return c
3811}
3812
3813// Header returns an http.Header that can be modified by the caller to
3814// add HTTP headers to the request.
3815func (c *ProjectsLocationsDatasetsCreateCall) Header() http.Header {
3816	if c.header_ == nil {
3817		c.header_ = make(http.Header)
3818	}
3819	return c.header_
3820}
3821
3822func (c *ProjectsLocationsDatasetsCreateCall) doRequest(alt string) (*http.Response, error) {
3823	reqHeaders := make(http.Header)
3824	for k, v := range c.header_ {
3825		reqHeaders[k] = v
3826	}
3827	reqHeaders.Set("User-Agent", c.s.userAgent())
3828	var body io.Reader = nil
3829	body, err := googleapi.WithoutDataWrapper.JSONReader(c.dataset)
3830	if err != nil {
3831		return nil, err
3832	}
3833	reqHeaders.Set("Content-Type", "application/json")
3834	c.urlParams_.Set("alt", alt)
3835	c.urlParams_.Set("prettyPrint", "false")
3836	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/datasets")
3837	urls += "?" + c.urlParams_.Encode()
3838	req, err := http.NewRequest("POST", urls, body)
3839	if err != nil {
3840		return nil, err
3841	}
3842	req.Header = reqHeaders
3843	googleapi.Expand(req.URL, map[string]string{
3844		"parent": c.parent,
3845	})
3846	return gensupport.SendRequest(c.ctx_, c.s.client, req)
3847}
3848
3849// Do executes the "healthcare.projects.locations.datasets.create" call.
3850// Exactly one of *Operation or error will be non-nil. Any non-2xx
3851// status code is an error. Response headers are in either
3852// *Operation.ServerResponse.Header or (if a response was returned at
3853// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
3854// to check whether the returned error was because
3855// http.StatusNotModified was returned.
3856func (c *ProjectsLocationsDatasetsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
3857	gensupport.SetOptions(c.urlParams_, opts...)
3858	res, err := c.doRequest("json")
3859	if res != nil && res.StatusCode == http.StatusNotModified {
3860		if res.Body != nil {
3861			res.Body.Close()
3862		}
3863		return nil, &googleapi.Error{
3864			Code:   res.StatusCode,
3865			Header: res.Header,
3866		}
3867	}
3868	if err != nil {
3869		return nil, err
3870	}
3871	defer googleapi.CloseBody(res)
3872	if err := googleapi.CheckResponse(res); err != nil {
3873		return nil, err
3874	}
3875	ret := &Operation{
3876		ServerResponse: googleapi.ServerResponse{
3877			Header:         res.Header,
3878			HTTPStatusCode: res.StatusCode,
3879		},
3880	}
3881	target := &ret
3882	if err := gensupport.DecodeResponse(target, res); err != nil {
3883		return nil, err
3884	}
3885	return ret, nil
3886	// {
3887	//   "description": "Creates a new health dataset. Results are returned through the\nOperation interface which returns either an\n`Operation.response` which contains a Dataset or\n`Operation.error`. The metadata\nfield type is OperationMetadata.\nA Google Cloud Platform project can contain up to 500 datasets across all\nregions.",
3888	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets",
3889	//   "httpMethod": "POST",
3890	//   "id": "healthcare.projects.locations.datasets.create",
3891	//   "parameterOrder": [
3892	//     "parent"
3893	//   ],
3894	//   "parameters": {
3895	//     "datasetId": {
3896	//       "description": "The ID of the dataset that is being created.\nThe string must match the following regex: `[\\p{L}\\p{N}_\\-\\.]{1,256}`.",
3897	//       "location": "query",
3898	//       "type": "string"
3899	//     },
3900	//     "parent": {
3901	//       "description": "The name of the project in which the dataset should be created (e.g.,\n`projects/{project_id}/locations/{location_id}`).",
3902	//       "location": "path",
3903	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
3904	//       "required": true,
3905	//       "type": "string"
3906	//     }
3907	//   },
3908	//   "path": "v1beta1/{+parent}/datasets",
3909	//   "request": {
3910	//     "$ref": "Dataset"
3911	//   },
3912	//   "response": {
3913	//     "$ref": "Operation"
3914	//   },
3915	//   "scopes": [
3916	//     "https://www.googleapis.com/auth/cloud-platform"
3917	//   ]
3918	// }
3919
3920}
3921
3922// method id "healthcare.projects.locations.datasets.deidentify":
3923
3924type ProjectsLocationsDatasetsDeidentifyCall struct {
3925	s                        *Service
3926	sourceDataset            string
3927	deidentifydatasetrequest *DeidentifyDatasetRequest
3928	urlParams_               gensupport.URLParams
3929	ctx_                     context.Context
3930	header_                  http.Header
3931}
3932
3933// Deidentify: Creates a new dataset containing de-identified data from
3934// the source
3935// dataset. The metadata field type
3936// is OperationMetadata.
3937// If the request is successful, the
3938// response field type is
3939// DeidentifySummary.
3940// If errors occur,
3941// details field type is
3942// DeidentifyErrorDetails.
3943func (r *ProjectsLocationsDatasetsService) Deidentify(sourceDataset string, deidentifydatasetrequest *DeidentifyDatasetRequest) *ProjectsLocationsDatasetsDeidentifyCall {
3944	c := &ProjectsLocationsDatasetsDeidentifyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
3945	c.sourceDataset = sourceDataset
3946	c.deidentifydatasetrequest = deidentifydatasetrequest
3947	return c
3948}
3949
3950// Fields allows partial responses to be retrieved. See
3951// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
3952// for more information.
3953func (c *ProjectsLocationsDatasetsDeidentifyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDeidentifyCall {
3954	c.urlParams_.Set("fields", googleapi.CombineFields(s))
3955	return c
3956}
3957
3958// Context sets the context to be used in this call's Do method. Any
3959// pending HTTP request will be aborted if the provided context is
3960// canceled.
3961func (c *ProjectsLocationsDatasetsDeidentifyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDeidentifyCall {
3962	c.ctx_ = ctx
3963	return c
3964}
3965
3966// Header returns an http.Header that can be modified by the caller to
3967// add HTTP headers to the request.
3968func (c *ProjectsLocationsDatasetsDeidentifyCall) Header() http.Header {
3969	if c.header_ == nil {
3970		c.header_ = make(http.Header)
3971	}
3972	return c.header_
3973}
3974
3975func (c *ProjectsLocationsDatasetsDeidentifyCall) doRequest(alt string) (*http.Response, error) {
3976	reqHeaders := make(http.Header)
3977	for k, v := range c.header_ {
3978		reqHeaders[k] = v
3979	}
3980	reqHeaders.Set("User-Agent", c.s.userAgent())
3981	var body io.Reader = nil
3982	body, err := googleapi.WithoutDataWrapper.JSONReader(c.deidentifydatasetrequest)
3983	if err != nil {
3984		return nil, err
3985	}
3986	reqHeaders.Set("Content-Type", "application/json")
3987	c.urlParams_.Set("alt", alt)
3988	c.urlParams_.Set("prettyPrint", "false")
3989	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+sourceDataset}:deidentify")
3990	urls += "?" + c.urlParams_.Encode()
3991	req, err := http.NewRequest("POST", urls, body)
3992	if err != nil {
3993		return nil, err
3994	}
3995	req.Header = reqHeaders
3996	googleapi.Expand(req.URL, map[string]string{
3997		"sourceDataset": c.sourceDataset,
3998	})
3999	return gensupport.SendRequest(c.ctx_, c.s.client, req)
4000}
4001
4002// Do executes the "healthcare.projects.locations.datasets.deidentify" call.
4003// Exactly one of *Operation or error will be non-nil. Any non-2xx
4004// status code is an error. Response headers are in either
4005// *Operation.ServerResponse.Header or (if a response was returned at
4006// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
4007// to check whether the returned error was because
4008// http.StatusNotModified was returned.
4009func (c *ProjectsLocationsDatasetsDeidentifyCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
4010	gensupport.SetOptions(c.urlParams_, opts...)
4011	res, err := c.doRequest("json")
4012	if res != nil && res.StatusCode == http.StatusNotModified {
4013		if res.Body != nil {
4014			res.Body.Close()
4015		}
4016		return nil, &googleapi.Error{
4017			Code:   res.StatusCode,
4018			Header: res.Header,
4019		}
4020	}
4021	if err != nil {
4022		return nil, err
4023	}
4024	defer googleapi.CloseBody(res)
4025	if err := googleapi.CheckResponse(res); err != nil {
4026		return nil, err
4027	}
4028	ret := &Operation{
4029		ServerResponse: googleapi.ServerResponse{
4030			Header:         res.Header,
4031			HTTPStatusCode: res.StatusCode,
4032		},
4033	}
4034	target := &ret
4035	if err := gensupport.DecodeResponse(target, res); err != nil {
4036		return nil, err
4037	}
4038	return ret, nil
4039	// {
4040	//   "description": "Creates a new dataset containing de-identified data from the source\ndataset. The metadata field type\nis OperationMetadata.\nIf the request is successful, the\nresponse field type is\nDeidentifySummary.\nIf errors occur,\ndetails field type is\nDeidentifyErrorDetails.",
4041	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}:deidentify",
4042	//   "httpMethod": "POST",
4043	//   "id": "healthcare.projects.locations.datasets.deidentify",
4044	//   "parameterOrder": [
4045	//     "sourceDataset"
4046	//   ],
4047	//   "parameters": {
4048	//     "sourceDataset": {
4049	//       "description": "Source dataset resource name. (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`).",
4050	//       "location": "path",
4051	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
4052	//       "required": true,
4053	//       "type": "string"
4054	//     }
4055	//   },
4056	//   "path": "v1beta1/{+sourceDataset}:deidentify",
4057	//   "request": {
4058	//     "$ref": "DeidentifyDatasetRequest"
4059	//   },
4060	//   "response": {
4061	//     "$ref": "Operation"
4062	//   },
4063	//   "scopes": [
4064	//     "https://www.googleapis.com/auth/cloud-platform"
4065	//   ]
4066	// }
4067
4068}
4069
4070// method id "healthcare.projects.locations.datasets.delete":
4071
4072type ProjectsLocationsDatasetsDeleteCall struct {
4073	s          *Service
4074	name       string
4075	urlParams_ gensupport.URLParams
4076	ctx_       context.Context
4077	header_    http.Header
4078}
4079
4080// Delete: Deletes the specified health dataset and all data contained
4081// in the dataset.
4082// Deleting a dataset does not affect the sources from which the dataset
4083// was
4084// imported (if any).
4085func (r *ProjectsLocationsDatasetsService) Delete(name string) *ProjectsLocationsDatasetsDeleteCall {
4086	c := &ProjectsLocationsDatasetsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
4087	c.name = name
4088	return c
4089}
4090
4091// Fields allows partial responses to be retrieved. See
4092// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
4093// for more information.
4094func (c *ProjectsLocationsDatasetsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDeleteCall {
4095	c.urlParams_.Set("fields", googleapi.CombineFields(s))
4096	return c
4097}
4098
4099// Context sets the context to be used in this call's Do method. Any
4100// pending HTTP request will be aborted if the provided context is
4101// canceled.
4102func (c *ProjectsLocationsDatasetsDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDeleteCall {
4103	c.ctx_ = ctx
4104	return c
4105}
4106
4107// Header returns an http.Header that can be modified by the caller to
4108// add HTTP headers to the request.
4109func (c *ProjectsLocationsDatasetsDeleteCall) Header() http.Header {
4110	if c.header_ == nil {
4111		c.header_ = make(http.Header)
4112	}
4113	return c.header_
4114}
4115
4116func (c *ProjectsLocationsDatasetsDeleteCall) doRequest(alt string) (*http.Response, error) {
4117	reqHeaders := make(http.Header)
4118	for k, v := range c.header_ {
4119		reqHeaders[k] = v
4120	}
4121	reqHeaders.Set("User-Agent", c.s.userAgent())
4122	var body io.Reader = nil
4123	c.urlParams_.Set("alt", alt)
4124	c.urlParams_.Set("prettyPrint", "false")
4125	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
4126	urls += "?" + c.urlParams_.Encode()
4127	req, err := http.NewRequest("DELETE", urls, body)
4128	if err != nil {
4129		return nil, err
4130	}
4131	req.Header = reqHeaders
4132	googleapi.Expand(req.URL, map[string]string{
4133		"name": c.name,
4134	})
4135	return gensupport.SendRequest(c.ctx_, c.s.client, req)
4136}
4137
4138// Do executes the "healthcare.projects.locations.datasets.delete" call.
4139// Exactly one of *Empty or error will be non-nil. Any non-2xx status
4140// code is an error. Response headers are in either
4141// *Empty.ServerResponse.Header or (if a response was returned at all)
4142// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
4143// check whether the returned error was because http.StatusNotModified
4144// was returned.
4145func (c *ProjectsLocationsDatasetsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
4146	gensupport.SetOptions(c.urlParams_, opts...)
4147	res, err := c.doRequest("json")
4148	if res != nil && res.StatusCode == http.StatusNotModified {
4149		if res.Body != nil {
4150			res.Body.Close()
4151		}
4152		return nil, &googleapi.Error{
4153			Code:   res.StatusCode,
4154			Header: res.Header,
4155		}
4156	}
4157	if err != nil {
4158		return nil, err
4159	}
4160	defer googleapi.CloseBody(res)
4161	if err := googleapi.CheckResponse(res); err != nil {
4162		return nil, err
4163	}
4164	ret := &Empty{
4165		ServerResponse: googleapi.ServerResponse{
4166			Header:         res.Header,
4167			HTTPStatusCode: res.StatusCode,
4168		},
4169	}
4170	target := &ret
4171	if err := gensupport.DecodeResponse(target, res); err != nil {
4172		return nil, err
4173	}
4174	return ret, nil
4175	// {
4176	//   "description": "Deletes the specified health dataset and all data contained in the dataset.\nDeleting a dataset does not affect the sources from which the dataset was\nimported (if any).",
4177	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}",
4178	//   "httpMethod": "DELETE",
4179	//   "id": "healthcare.projects.locations.datasets.delete",
4180	//   "parameterOrder": [
4181	//     "name"
4182	//   ],
4183	//   "parameters": {
4184	//     "name": {
4185	//       "description": "The name of the dataset to delete (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`).",
4186	//       "location": "path",
4187	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
4188	//       "required": true,
4189	//       "type": "string"
4190	//     }
4191	//   },
4192	//   "path": "v1beta1/{+name}",
4193	//   "response": {
4194	//     "$ref": "Empty"
4195	//   },
4196	//   "scopes": [
4197	//     "https://www.googleapis.com/auth/cloud-platform"
4198	//   ]
4199	// }
4200
4201}
4202
4203// method id "healthcare.projects.locations.datasets.get":
4204
4205type ProjectsLocationsDatasetsGetCall struct {
4206	s            *Service
4207	name         string
4208	urlParams_   gensupport.URLParams
4209	ifNoneMatch_ string
4210	ctx_         context.Context
4211	header_      http.Header
4212}
4213
4214// Get: Gets any metadata associated with a dataset.
4215func (r *ProjectsLocationsDatasetsService) Get(name string) *ProjectsLocationsDatasetsGetCall {
4216	c := &ProjectsLocationsDatasetsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
4217	c.name = name
4218	return c
4219}
4220
4221// Fields allows partial responses to be retrieved. See
4222// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
4223// for more information.
4224func (c *ProjectsLocationsDatasetsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsGetCall {
4225	c.urlParams_.Set("fields", googleapi.CombineFields(s))
4226	return c
4227}
4228
4229// IfNoneMatch sets the optional parameter which makes the operation
4230// fail if the object's ETag matches the given value. This is useful for
4231// getting updates only after the object has changed since the last
4232// request. Use googleapi.IsNotModified to check whether the response
4233// error from Do is the result of In-None-Match.
4234func (c *ProjectsLocationsDatasetsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsGetCall {
4235	c.ifNoneMatch_ = entityTag
4236	return c
4237}
4238
4239// Context sets the context to be used in this call's Do method. Any
4240// pending HTTP request will be aborted if the provided context is
4241// canceled.
4242func (c *ProjectsLocationsDatasetsGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsGetCall {
4243	c.ctx_ = ctx
4244	return c
4245}
4246
4247// Header returns an http.Header that can be modified by the caller to
4248// add HTTP headers to the request.
4249func (c *ProjectsLocationsDatasetsGetCall) Header() http.Header {
4250	if c.header_ == nil {
4251		c.header_ = make(http.Header)
4252	}
4253	return c.header_
4254}
4255
4256func (c *ProjectsLocationsDatasetsGetCall) doRequest(alt string) (*http.Response, error) {
4257	reqHeaders := make(http.Header)
4258	for k, v := range c.header_ {
4259		reqHeaders[k] = v
4260	}
4261	reqHeaders.Set("User-Agent", c.s.userAgent())
4262	if c.ifNoneMatch_ != "" {
4263		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
4264	}
4265	var body io.Reader = nil
4266	c.urlParams_.Set("alt", alt)
4267	c.urlParams_.Set("prettyPrint", "false")
4268	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
4269	urls += "?" + c.urlParams_.Encode()
4270	req, err := http.NewRequest("GET", urls, body)
4271	if err != nil {
4272		return nil, err
4273	}
4274	req.Header = reqHeaders
4275	googleapi.Expand(req.URL, map[string]string{
4276		"name": c.name,
4277	})
4278	return gensupport.SendRequest(c.ctx_, c.s.client, req)
4279}
4280
4281// Do executes the "healthcare.projects.locations.datasets.get" call.
4282// Exactly one of *Dataset or error will be non-nil. Any non-2xx status
4283// code is an error. Response headers are in either
4284// *Dataset.ServerResponse.Header or (if a response was returned at all)
4285// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
4286// check whether the returned error was because http.StatusNotModified
4287// was returned.
4288func (c *ProjectsLocationsDatasetsGetCall) Do(opts ...googleapi.CallOption) (*Dataset, error) {
4289	gensupport.SetOptions(c.urlParams_, opts...)
4290	res, err := c.doRequest("json")
4291	if res != nil && res.StatusCode == http.StatusNotModified {
4292		if res.Body != nil {
4293			res.Body.Close()
4294		}
4295		return nil, &googleapi.Error{
4296			Code:   res.StatusCode,
4297			Header: res.Header,
4298		}
4299	}
4300	if err != nil {
4301		return nil, err
4302	}
4303	defer googleapi.CloseBody(res)
4304	if err := googleapi.CheckResponse(res); err != nil {
4305		return nil, err
4306	}
4307	ret := &Dataset{
4308		ServerResponse: googleapi.ServerResponse{
4309			Header:         res.Header,
4310			HTTPStatusCode: res.StatusCode,
4311		},
4312	}
4313	target := &ret
4314	if err := gensupport.DecodeResponse(target, res); err != nil {
4315		return nil, err
4316	}
4317	return ret, nil
4318	// {
4319	//   "description": "Gets any metadata associated with a dataset.",
4320	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}",
4321	//   "httpMethod": "GET",
4322	//   "id": "healthcare.projects.locations.datasets.get",
4323	//   "parameterOrder": [
4324	//     "name"
4325	//   ],
4326	//   "parameters": {
4327	//     "name": {
4328	//       "description": "The name of the dataset to read (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`).",
4329	//       "location": "path",
4330	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
4331	//       "required": true,
4332	//       "type": "string"
4333	//     }
4334	//   },
4335	//   "path": "v1beta1/{+name}",
4336	//   "response": {
4337	//     "$ref": "Dataset"
4338	//   },
4339	//   "scopes": [
4340	//     "https://www.googleapis.com/auth/cloud-platform"
4341	//   ]
4342	// }
4343
4344}
4345
4346// method id "healthcare.projects.locations.datasets.getIamPolicy":
4347
4348type ProjectsLocationsDatasetsGetIamPolicyCall struct {
4349	s            *Service
4350	resource     string
4351	urlParams_   gensupport.URLParams
4352	ifNoneMatch_ string
4353	ctx_         context.Context
4354	header_      http.Header
4355}
4356
4357// GetIamPolicy: Gets the access control policy for a resource.
4358// Returns an empty policy if the resource exists and does not have a
4359// policy
4360// set.
4361func (r *ProjectsLocationsDatasetsService) GetIamPolicy(resource string) *ProjectsLocationsDatasetsGetIamPolicyCall {
4362	c := &ProjectsLocationsDatasetsGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
4363	c.resource = resource
4364	return c
4365}
4366
4367// Fields allows partial responses to be retrieved. See
4368// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
4369// for more information.
4370func (c *ProjectsLocationsDatasetsGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsGetIamPolicyCall {
4371	c.urlParams_.Set("fields", googleapi.CombineFields(s))
4372	return c
4373}
4374
4375// IfNoneMatch sets the optional parameter which makes the operation
4376// fail if the object's ETag matches the given value. This is useful for
4377// getting updates only after the object has changed since the last
4378// request. Use googleapi.IsNotModified to check whether the response
4379// error from Do is the result of In-None-Match.
4380func (c *ProjectsLocationsDatasetsGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsGetIamPolicyCall {
4381	c.ifNoneMatch_ = entityTag
4382	return c
4383}
4384
4385// Context sets the context to be used in this call's Do method. Any
4386// pending HTTP request will be aborted if the provided context is
4387// canceled.
4388func (c *ProjectsLocationsDatasetsGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsGetIamPolicyCall {
4389	c.ctx_ = ctx
4390	return c
4391}
4392
4393// Header returns an http.Header that can be modified by the caller to
4394// add HTTP headers to the request.
4395func (c *ProjectsLocationsDatasetsGetIamPolicyCall) Header() http.Header {
4396	if c.header_ == nil {
4397		c.header_ = make(http.Header)
4398	}
4399	return c.header_
4400}
4401
4402func (c *ProjectsLocationsDatasetsGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
4403	reqHeaders := make(http.Header)
4404	for k, v := range c.header_ {
4405		reqHeaders[k] = v
4406	}
4407	reqHeaders.Set("User-Agent", c.s.userAgent())
4408	if c.ifNoneMatch_ != "" {
4409		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
4410	}
4411	var body io.Reader = nil
4412	c.urlParams_.Set("alt", alt)
4413	c.urlParams_.Set("prettyPrint", "false")
4414	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:getIamPolicy")
4415	urls += "?" + c.urlParams_.Encode()
4416	req, err := http.NewRequest("GET", urls, body)
4417	if err != nil {
4418		return nil, err
4419	}
4420	req.Header = reqHeaders
4421	googleapi.Expand(req.URL, map[string]string{
4422		"resource": c.resource,
4423	})
4424	return gensupport.SendRequest(c.ctx_, c.s.client, req)
4425}
4426
4427// Do executes the "healthcare.projects.locations.datasets.getIamPolicy" call.
4428// Exactly one of *Policy or error will be non-nil. Any non-2xx status
4429// code is an error. Response headers are in either
4430// *Policy.ServerResponse.Header or (if a response was returned at all)
4431// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
4432// check whether the returned error was because http.StatusNotModified
4433// was returned.
4434func (c *ProjectsLocationsDatasetsGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
4435	gensupport.SetOptions(c.urlParams_, opts...)
4436	res, err := c.doRequest("json")
4437	if res != nil && res.StatusCode == http.StatusNotModified {
4438		if res.Body != nil {
4439			res.Body.Close()
4440		}
4441		return nil, &googleapi.Error{
4442			Code:   res.StatusCode,
4443			Header: res.Header,
4444		}
4445	}
4446	if err != nil {
4447		return nil, err
4448	}
4449	defer googleapi.CloseBody(res)
4450	if err := googleapi.CheckResponse(res); err != nil {
4451		return nil, err
4452	}
4453	ret := &Policy{
4454		ServerResponse: googleapi.ServerResponse{
4455			Header:         res.Header,
4456			HTTPStatusCode: res.StatusCode,
4457		},
4458	}
4459	target := &ret
4460	if err := gensupport.DecodeResponse(target, res); err != nil {
4461		return nil, err
4462	}
4463	return ret, nil
4464	// {
4465	//   "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
4466	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}:getIamPolicy",
4467	//   "httpMethod": "GET",
4468	//   "id": "healthcare.projects.locations.datasets.getIamPolicy",
4469	//   "parameterOrder": [
4470	//     "resource"
4471	//   ],
4472	//   "parameters": {
4473	//     "resource": {
4474	//       "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
4475	//       "location": "path",
4476	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
4477	//       "required": true,
4478	//       "type": "string"
4479	//     }
4480	//   },
4481	//   "path": "v1beta1/{+resource}:getIamPolicy",
4482	//   "response": {
4483	//     "$ref": "Policy"
4484	//   },
4485	//   "scopes": [
4486	//     "https://www.googleapis.com/auth/cloud-platform"
4487	//   ]
4488	// }
4489
4490}
4491
4492// method id "healthcare.projects.locations.datasets.list":
4493
4494type ProjectsLocationsDatasetsListCall struct {
4495	s            *Service
4496	parent       string
4497	urlParams_   gensupport.URLParams
4498	ifNoneMatch_ string
4499	ctx_         context.Context
4500	header_      http.Header
4501}
4502
4503// List: Lists the health datasets in the current project.
4504func (r *ProjectsLocationsDatasetsService) List(parent string) *ProjectsLocationsDatasetsListCall {
4505	c := &ProjectsLocationsDatasetsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
4506	c.parent = parent
4507	return c
4508}
4509
4510// PageSize sets the optional parameter "pageSize": The maximum number
4511// of items to return. Capped to 100 if not specified.
4512// May not be larger than 1000.
4513func (c *ProjectsLocationsDatasetsListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsListCall {
4514	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
4515	return c
4516}
4517
4518// PageToken sets the optional parameter "pageToken": The
4519// next_page_token value returned from a previous List request, if any.
4520func (c *ProjectsLocationsDatasetsListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsListCall {
4521	c.urlParams_.Set("pageToken", pageToken)
4522	return c
4523}
4524
4525// Fields allows partial responses to be retrieved. See
4526// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
4527// for more information.
4528func (c *ProjectsLocationsDatasetsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsListCall {
4529	c.urlParams_.Set("fields", googleapi.CombineFields(s))
4530	return c
4531}
4532
4533// IfNoneMatch sets the optional parameter which makes the operation
4534// fail if the object's ETag matches the given value. This is useful for
4535// getting updates only after the object has changed since the last
4536// request. Use googleapi.IsNotModified to check whether the response
4537// error from Do is the result of In-None-Match.
4538func (c *ProjectsLocationsDatasetsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsListCall {
4539	c.ifNoneMatch_ = entityTag
4540	return c
4541}
4542
4543// Context sets the context to be used in this call's Do method. Any
4544// pending HTTP request will be aborted if the provided context is
4545// canceled.
4546func (c *ProjectsLocationsDatasetsListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsListCall {
4547	c.ctx_ = ctx
4548	return c
4549}
4550
4551// Header returns an http.Header that can be modified by the caller to
4552// add HTTP headers to the request.
4553func (c *ProjectsLocationsDatasetsListCall) Header() http.Header {
4554	if c.header_ == nil {
4555		c.header_ = make(http.Header)
4556	}
4557	return c.header_
4558}
4559
4560func (c *ProjectsLocationsDatasetsListCall) doRequest(alt string) (*http.Response, error) {
4561	reqHeaders := make(http.Header)
4562	for k, v := range c.header_ {
4563		reqHeaders[k] = v
4564	}
4565	reqHeaders.Set("User-Agent", c.s.userAgent())
4566	if c.ifNoneMatch_ != "" {
4567		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
4568	}
4569	var body io.Reader = nil
4570	c.urlParams_.Set("alt", alt)
4571	c.urlParams_.Set("prettyPrint", "false")
4572	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/datasets")
4573	urls += "?" + c.urlParams_.Encode()
4574	req, err := http.NewRequest("GET", urls, body)
4575	if err != nil {
4576		return nil, err
4577	}
4578	req.Header = reqHeaders
4579	googleapi.Expand(req.URL, map[string]string{
4580		"parent": c.parent,
4581	})
4582	return gensupport.SendRequest(c.ctx_, c.s.client, req)
4583}
4584
4585// Do executes the "healthcare.projects.locations.datasets.list" call.
4586// Exactly one of *ListDatasetsResponse or error will be non-nil. Any
4587// non-2xx status code is an error. Response headers are in either
4588// *ListDatasetsResponse.ServerResponse.Header or (if a response was
4589// returned at all) in error.(*googleapi.Error).Header. Use
4590// googleapi.IsNotModified to check whether the returned error was
4591// because http.StatusNotModified was returned.
4592func (c *ProjectsLocationsDatasetsListCall) Do(opts ...googleapi.CallOption) (*ListDatasetsResponse, error) {
4593	gensupport.SetOptions(c.urlParams_, opts...)
4594	res, err := c.doRequest("json")
4595	if res != nil && res.StatusCode == http.StatusNotModified {
4596		if res.Body != nil {
4597			res.Body.Close()
4598		}
4599		return nil, &googleapi.Error{
4600			Code:   res.StatusCode,
4601			Header: res.Header,
4602		}
4603	}
4604	if err != nil {
4605		return nil, err
4606	}
4607	defer googleapi.CloseBody(res)
4608	if err := googleapi.CheckResponse(res); err != nil {
4609		return nil, err
4610	}
4611	ret := &ListDatasetsResponse{
4612		ServerResponse: googleapi.ServerResponse{
4613			Header:         res.Header,
4614			HTTPStatusCode: res.StatusCode,
4615		},
4616	}
4617	target := &ret
4618	if err := gensupport.DecodeResponse(target, res); err != nil {
4619		return nil, err
4620	}
4621	return ret, nil
4622	// {
4623	//   "description": "Lists the health datasets in the current project.",
4624	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets",
4625	//   "httpMethod": "GET",
4626	//   "id": "healthcare.projects.locations.datasets.list",
4627	//   "parameterOrder": [
4628	//     "parent"
4629	//   ],
4630	//   "parameters": {
4631	//     "pageSize": {
4632	//       "description": "The maximum number of items to return. Capped to 100 if not specified.\nMay not be larger than 1000.",
4633	//       "format": "int32",
4634	//       "location": "query",
4635	//       "type": "integer"
4636	//     },
4637	//     "pageToken": {
4638	//       "description": "The next_page_token value returned from a previous List request, if any.",
4639	//       "location": "query",
4640	//       "type": "string"
4641	//     },
4642	//     "parent": {
4643	//       "description": "The name of the project whose datasets should be listed (e.g.,\n`projects/{project_id}/locations/{location_id}`).",
4644	//       "location": "path",
4645	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
4646	//       "required": true,
4647	//       "type": "string"
4648	//     }
4649	//   },
4650	//   "path": "v1beta1/{+parent}/datasets",
4651	//   "response": {
4652	//     "$ref": "ListDatasetsResponse"
4653	//   },
4654	//   "scopes": [
4655	//     "https://www.googleapis.com/auth/cloud-platform"
4656	//   ]
4657	// }
4658
4659}
4660
4661// Pages invokes f for each page of results.
4662// A non-nil error returned from f will halt the iteration.
4663// The provided context supersedes any context provided to the Context method.
4664func (c *ProjectsLocationsDatasetsListCall) Pages(ctx context.Context, f func(*ListDatasetsResponse) error) error {
4665	c.ctx_ = ctx
4666	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
4667	for {
4668		x, err := c.Do()
4669		if err != nil {
4670			return err
4671		}
4672		if err := f(x); err != nil {
4673			return err
4674		}
4675		if x.NextPageToken == "" {
4676			return nil
4677		}
4678		c.PageToken(x.NextPageToken)
4679	}
4680}
4681
4682// method id "healthcare.projects.locations.datasets.patch":
4683
4684type ProjectsLocationsDatasetsPatchCall struct {
4685	s          *Service
4686	name       string
4687	dataset    *Dataset
4688	urlParams_ gensupport.URLParams
4689	ctx_       context.Context
4690	header_    http.Header
4691}
4692
4693// Patch: Updates dataset metadata.
4694func (r *ProjectsLocationsDatasetsService) Patch(name string, dataset *Dataset) *ProjectsLocationsDatasetsPatchCall {
4695	c := &ProjectsLocationsDatasetsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
4696	c.name = name
4697	c.dataset = dataset
4698	return c
4699}
4700
4701// UpdateMask sets the optional parameter "updateMask": The update mask
4702// applies to the resource. For the `FieldMask`
4703// definition,
4704// see
4705// https://developers.google.com/protocol-buffers/docs/re
4706// ference/google.protobuf#fieldmask
4707func (c *ProjectsLocationsDatasetsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDatasetsPatchCall {
4708	c.urlParams_.Set("updateMask", updateMask)
4709	return c
4710}
4711
4712// Fields allows partial responses to be retrieved. See
4713// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
4714// for more information.
4715func (c *ProjectsLocationsDatasetsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsPatchCall {
4716	c.urlParams_.Set("fields", googleapi.CombineFields(s))
4717	return c
4718}
4719
4720// Context sets the context to be used in this call's Do method. Any
4721// pending HTTP request will be aborted if the provided context is
4722// canceled.
4723func (c *ProjectsLocationsDatasetsPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsPatchCall {
4724	c.ctx_ = ctx
4725	return c
4726}
4727
4728// Header returns an http.Header that can be modified by the caller to
4729// add HTTP headers to the request.
4730func (c *ProjectsLocationsDatasetsPatchCall) Header() http.Header {
4731	if c.header_ == nil {
4732		c.header_ = make(http.Header)
4733	}
4734	return c.header_
4735}
4736
4737func (c *ProjectsLocationsDatasetsPatchCall) doRequest(alt string) (*http.Response, error) {
4738	reqHeaders := make(http.Header)
4739	for k, v := range c.header_ {
4740		reqHeaders[k] = v
4741	}
4742	reqHeaders.Set("User-Agent", c.s.userAgent())
4743	var body io.Reader = nil
4744	body, err := googleapi.WithoutDataWrapper.JSONReader(c.dataset)
4745	if err != nil {
4746		return nil, err
4747	}
4748	reqHeaders.Set("Content-Type", "application/json")
4749	c.urlParams_.Set("alt", alt)
4750	c.urlParams_.Set("prettyPrint", "false")
4751	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
4752	urls += "?" + c.urlParams_.Encode()
4753	req, err := http.NewRequest("PATCH", urls, body)
4754	if err != nil {
4755		return nil, err
4756	}
4757	req.Header = reqHeaders
4758	googleapi.Expand(req.URL, map[string]string{
4759		"name": c.name,
4760	})
4761	return gensupport.SendRequest(c.ctx_, c.s.client, req)
4762}
4763
4764// Do executes the "healthcare.projects.locations.datasets.patch" call.
4765// Exactly one of *Dataset or error will be non-nil. Any non-2xx status
4766// code is an error. Response headers are in either
4767// *Dataset.ServerResponse.Header or (if a response was returned at all)
4768// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
4769// check whether the returned error was because http.StatusNotModified
4770// was returned.
4771func (c *ProjectsLocationsDatasetsPatchCall) Do(opts ...googleapi.CallOption) (*Dataset, error) {
4772	gensupport.SetOptions(c.urlParams_, opts...)
4773	res, err := c.doRequest("json")
4774	if res != nil && res.StatusCode == http.StatusNotModified {
4775		if res.Body != nil {
4776			res.Body.Close()
4777		}
4778		return nil, &googleapi.Error{
4779			Code:   res.StatusCode,
4780			Header: res.Header,
4781		}
4782	}
4783	if err != nil {
4784		return nil, err
4785	}
4786	defer googleapi.CloseBody(res)
4787	if err := googleapi.CheckResponse(res); err != nil {
4788		return nil, err
4789	}
4790	ret := &Dataset{
4791		ServerResponse: googleapi.ServerResponse{
4792			Header:         res.Header,
4793			HTTPStatusCode: res.StatusCode,
4794		},
4795	}
4796	target := &ret
4797	if err := gensupport.DecodeResponse(target, res); err != nil {
4798		return nil, err
4799	}
4800	return ret, nil
4801	// {
4802	//   "description": "Updates dataset metadata.",
4803	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}",
4804	//   "httpMethod": "PATCH",
4805	//   "id": "healthcare.projects.locations.datasets.patch",
4806	//   "parameterOrder": [
4807	//     "name"
4808	//   ],
4809	//   "parameters": {
4810	//     "name": {
4811	//       "description": "Output only. Resource name of the dataset, of the form\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}`.",
4812	//       "location": "path",
4813	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
4814	//       "required": true,
4815	//       "type": "string"
4816	//     },
4817	//     "updateMask": {
4818	//       "description": "The update mask applies to the resource. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask",
4819	//       "format": "google-fieldmask",
4820	//       "location": "query",
4821	//       "type": "string"
4822	//     }
4823	//   },
4824	//   "path": "v1beta1/{+name}",
4825	//   "request": {
4826	//     "$ref": "Dataset"
4827	//   },
4828	//   "response": {
4829	//     "$ref": "Dataset"
4830	//   },
4831	//   "scopes": [
4832	//     "https://www.googleapis.com/auth/cloud-platform"
4833	//   ]
4834	// }
4835
4836}
4837
4838// method id "healthcare.projects.locations.datasets.setIamPolicy":
4839
4840type ProjectsLocationsDatasetsSetIamPolicyCall struct {
4841	s                   *Service
4842	resource            string
4843	setiampolicyrequest *SetIamPolicyRequest
4844	urlParams_          gensupport.URLParams
4845	ctx_                context.Context
4846	header_             http.Header
4847}
4848
4849// SetIamPolicy: Sets the access control policy on the specified
4850// resource. Replaces any
4851// existing policy.
4852func (r *ProjectsLocationsDatasetsService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsDatasetsSetIamPolicyCall {
4853	c := &ProjectsLocationsDatasetsSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
4854	c.resource = resource
4855	c.setiampolicyrequest = setiampolicyrequest
4856	return c
4857}
4858
4859// Fields allows partial responses to be retrieved. See
4860// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
4861// for more information.
4862func (c *ProjectsLocationsDatasetsSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsSetIamPolicyCall {
4863	c.urlParams_.Set("fields", googleapi.CombineFields(s))
4864	return c
4865}
4866
4867// Context sets the context to be used in this call's Do method. Any
4868// pending HTTP request will be aborted if the provided context is
4869// canceled.
4870func (c *ProjectsLocationsDatasetsSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsSetIamPolicyCall {
4871	c.ctx_ = ctx
4872	return c
4873}
4874
4875// Header returns an http.Header that can be modified by the caller to
4876// add HTTP headers to the request.
4877func (c *ProjectsLocationsDatasetsSetIamPolicyCall) Header() http.Header {
4878	if c.header_ == nil {
4879		c.header_ = make(http.Header)
4880	}
4881	return c.header_
4882}
4883
4884func (c *ProjectsLocationsDatasetsSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
4885	reqHeaders := make(http.Header)
4886	for k, v := range c.header_ {
4887		reqHeaders[k] = v
4888	}
4889	reqHeaders.Set("User-Agent", c.s.userAgent())
4890	var body io.Reader = nil
4891	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest)
4892	if err != nil {
4893		return nil, err
4894	}
4895	reqHeaders.Set("Content-Type", "application/json")
4896	c.urlParams_.Set("alt", alt)
4897	c.urlParams_.Set("prettyPrint", "false")
4898	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:setIamPolicy")
4899	urls += "?" + c.urlParams_.Encode()
4900	req, err := http.NewRequest("POST", urls, body)
4901	if err != nil {
4902		return nil, err
4903	}
4904	req.Header = reqHeaders
4905	googleapi.Expand(req.URL, map[string]string{
4906		"resource": c.resource,
4907	})
4908	return gensupport.SendRequest(c.ctx_, c.s.client, req)
4909}
4910
4911// Do executes the "healthcare.projects.locations.datasets.setIamPolicy" call.
4912// Exactly one of *Policy or error will be non-nil. Any non-2xx status
4913// code is an error. Response headers are in either
4914// *Policy.ServerResponse.Header or (if a response was returned at all)
4915// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
4916// check whether the returned error was because http.StatusNotModified
4917// was returned.
4918func (c *ProjectsLocationsDatasetsSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
4919	gensupport.SetOptions(c.urlParams_, opts...)
4920	res, err := c.doRequest("json")
4921	if res != nil && res.StatusCode == http.StatusNotModified {
4922		if res.Body != nil {
4923			res.Body.Close()
4924		}
4925		return nil, &googleapi.Error{
4926			Code:   res.StatusCode,
4927			Header: res.Header,
4928		}
4929	}
4930	if err != nil {
4931		return nil, err
4932	}
4933	defer googleapi.CloseBody(res)
4934	if err := googleapi.CheckResponse(res); err != nil {
4935		return nil, err
4936	}
4937	ret := &Policy{
4938		ServerResponse: googleapi.ServerResponse{
4939			Header:         res.Header,
4940			HTTPStatusCode: res.StatusCode,
4941		},
4942	}
4943	target := &ret
4944	if err := gensupport.DecodeResponse(target, res); err != nil {
4945		return nil, err
4946	}
4947	return ret, nil
4948	// {
4949	//   "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
4950	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}:setIamPolicy",
4951	//   "httpMethod": "POST",
4952	//   "id": "healthcare.projects.locations.datasets.setIamPolicy",
4953	//   "parameterOrder": [
4954	//     "resource"
4955	//   ],
4956	//   "parameters": {
4957	//     "resource": {
4958	//       "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
4959	//       "location": "path",
4960	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
4961	//       "required": true,
4962	//       "type": "string"
4963	//     }
4964	//   },
4965	//   "path": "v1beta1/{+resource}:setIamPolicy",
4966	//   "request": {
4967	//     "$ref": "SetIamPolicyRequest"
4968	//   },
4969	//   "response": {
4970	//     "$ref": "Policy"
4971	//   },
4972	//   "scopes": [
4973	//     "https://www.googleapis.com/auth/cloud-platform"
4974	//   ]
4975	// }
4976
4977}
4978
4979// method id "healthcare.projects.locations.datasets.testIamPermissions":
4980
4981type ProjectsLocationsDatasetsTestIamPermissionsCall struct {
4982	s                         *Service
4983	resource                  string
4984	testiampermissionsrequest *TestIamPermissionsRequest
4985	urlParams_                gensupport.URLParams
4986	ctx_                      context.Context
4987	header_                   http.Header
4988}
4989
4990// TestIamPermissions: Returns permissions that a caller has on the
4991// specified resource.
4992// If the resource does not exist, this will return an empty set
4993// of
4994// permissions, not a NOT_FOUND error.
4995//
4996// Note: This operation is designed to be used for building
4997// permission-aware
4998// UIs and command-line tools, not for authorization checking. This
4999// operation
5000// may "fail open" without warning.
5001func (r *ProjectsLocationsDatasetsService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsDatasetsTestIamPermissionsCall {
5002	c := &ProjectsLocationsDatasetsTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
5003	c.resource = resource
5004	c.testiampermissionsrequest = testiampermissionsrequest
5005	return c
5006}
5007
5008// Fields allows partial responses to be retrieved. See
5009// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
5010// for more information.
5011func (c *ProjectsLocationsDatasetsTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsTestIamPermissionsCall {
5012	c.urlParams_.Set("fields", googleapi.CombineFields(s))
5013	return c
5014}
5015
5016// Context sets the context to be used in this call's Do method. Any
5017// pending HTTP request will be aborted if the provided context is
5018// canceled.
5019func (c *ProjectsLocationsDatasetsTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsDatasetsTestIamPermissionsCall {
5020	c.ctx_ = ctx
5021	return c
5022}
5023
5024// Header returns an http.Header that can be modified by the caller to
5025// add HTTP headers to the request.
5026func (c *ProjectsLocationsDatasetsTestIamPermissionsCall) Header() http.Header {
5027	if c.header_ == nil {
5028		c.header_ = make(http.Header)
5029	}
5030	return c.header_
5031}
5032
5033func (c *ProjectsLocationsDatasetsTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
5034	reqHeaders := make(http.Header)
5035	for k, v := range c.header_ {
5036		reqHeaders[k] = v
5037	}
5038	reqHeaders.Set("User-Agent", c.s.userAgent())
5039	var body io.Reader = nil
5040	body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest)
5041	if err != nil {
5042		return nil, err
5043	}
5044	reqHeaders.Set("Content-Type", "application/json")
5045	c.urlParams_.Set("alt", alt)
5046	c.urlParams_.Set("prettyPrint", "false")
5047	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:testIamPermissions")
5048	urls += "?" + c.urlParams_.Encode()
5049	req, err := http.NewRequest("POST", urls, body)
5050	if err != nil {
5051		return nil, err
5052	}
5053	req.Header = reqHeaders
5054	googleapi.Expand(req.URL, map[string]string{
5055		"resource": c.resource,
5056	})
5057	return gensupport.SendRequest(c.ctx_, c.s.client, req)
5058}
5059
5060// Do executes the "healthcare.projects.locations.datasets.testIamPermissions" call.
5061// Exactly one of *TestIamPermissionsResponse or error will be non-nil.
5062// Any non-2xx status code is an error. Response headers are in either
5063// *TestIamPermissionsResponse.ServerResponse.Header or (if a response
5064// was returned at all) in error.(*googleapi.Error).Header. Use
5065// googleapi.IsNotModified to check whether the returned error was
5066// because http.StatusNotModified was returned.
5067func (c *ProjectsLocationsDatasetsTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) {
5068	gensupport.SetOptions(c.urlParams_, opts...)
5069	res, err := c.doRequest("json")
5070	if res != nil && res.StatusCode == http.StatusNotModified {
5071		if res.Body != nil {
5072			res.Body.Close()
5073		}
5074		return nil, &googleapi.Error{
5075			Code:   res.StatusCode,
5076			Header: res.Header,
5077		}
5078	}
5079	if err != nil {
5080		return nil, err
5081	}
5082	defer googleapi.CloseBody(res)
5083	if err := googleapi.CheckResponse(res); err != nil {
5084		return nil, err
5085	}
5086	ret := &TestIamPermissionsResponse{
5087		ServerResponse: googleapi.ServerResponse{
5088			Header:         res.Header,
5089			HTTPStatusCode: res.StatusCode,
5090		},
5091	}
5092	target := &ret
5093	if err := gensupport.DecodeResponse(target, res); err != nil {
5094		return nil, err
5095	}
5096	return ret, nil
5097	// {
5098	//   "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
5099	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}:testIamPermissions",
5100	//   "httpMethod": "POST",
5101	//   "id": "healthcare.projects.locations.datasets.testIamPermissions",
5102	//   "parameterOrder": [
5103	//     "resource"
5104	//   ],
5105	//   "parameters": {
5106	//     "resource": {
5107	//       "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
5108	//       "location": "path",
5109	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
5110	//       "required": true,
5111	//       "type": "string"
5112	//     }
5113	//   },
5114	//   "path": "v1beta1/{+resource}:testIamPermissions",
5115	//   "request": {
5116	//     "$ref": "TestIamPermissionsRequest"
5117	//   },
5118	//   "response": {
5119	//     "$ref": "TestIamPermissionsResponse"
5120	//   },
5121	//   "scopes": [
5122	//     "https://www.googleapis.com/auth/cloud-platform"
5123	//   ]
5124	// }
5125
5126}
5127
5128// method id "healthcare.projects.locations.datasets.dicomStores.create":
5129
5130type ProjectsLocationsDatasetsDicomStoresCreateCall struct {
5131	s          *Service
5132	parent     string
5133	dicomstore *DicomStore
5134	urlParams_ gensupport.URLParams
5135	ctx_       context.Context
5136	header_    http.Header
5137}
5138
5139// Create: Creates a new DICOM store within the parent dataset.
5140func (r *ProjectsLocationsDatasetsDicomStoresService) Create(parent string, dicomstore *DicomStore) *ProjectsLocationsDatasetsDicomStoresCreateCall {
5141	c := &ProjectsLocationsDatasetsDicomStoresCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
5142	c.parent = parent
5143	c.dicomstore = dicomstore
5144	return c
5145}
5146
5147// DicomStoreId sets the optional parameter "dicomStoreId": The ID of
5148// the DICOM store that is being created.
5149// Any string value up to 256 characters in length.
5150func (c *ProjectsLocationsDatasetsDicomStoresCreateCall) DicomStoreId(dicomStoreId string) *ProjectsLocationsDatasetsDicomStoresCreateCall {
5151	c.urlParams_.Set("dicomStoreId", dicomStoreId)
5152	return c
5153}
5154
5155// Fields allows partial responses to be retrieved. See
5156// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
5157// for more information.
5158func (c *ProjectsLocationsDatasetsDicomStoresCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresCreateCall {
5159	c.urlParams_.Set("fields", googleapi.CombineFields(s))
5160	return c
5161}
5162
5163// Context sets the context to be used in this call's Do method. Any
5164// pending HTTP request will be aborted if the provided context is
5165// canceled.
5166func (c *ProjectsLocationsDatasetsDicomStoresCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresCreateCall {
5167	c.ctx_ = ctx
5168	return c
5169}
5170
5171// Header returns an http.Header that can be modified by the caller to
5172// add HTTP headers to the request.
5173func (c *ProjectsLocationsDatasetsDicomStoresCreateCall) Header() http.Header {
5174	if c.header_ == nil {
5175		c.header_ = make(http.Header)
5176	}
5177	return c.header_
5178}
5179
5180func (c *ProjectsLocationsDatasetsDicomStoresCreateCall) doRequest(alt string) (*http.Response, error) {
5181	reqHeaders := make(http.Header)
5182	for k, v := range c.header_ {
5183		reqHeaders[k] = v
5184	}
5185	reqHeaders.Set("User-Agent", c.s.userAgent())
5186	var body io.Reader = nil
5187	body, err := googleapi.WithoutDataWrapper.JSONReader(c.dicomstore)
5188	if err != nil {
5189		return nil, err
5190	}
5191	reqHeaders.Set("Content-Type", "application/json")
5192	c.urlParams_.Set("alt", alt)
5193	c.urlParams_.Set("prettyPrint", "false")
5194	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/dicomStores")
5195	urls += "?" + c.urlParams_.Encode()
5196	req, err := http.NewRequest("POST", urls, body)
5197	if err != nil {
5198		return nil, err
5199	}
5200	req.Header = reqHeaders
5201	googleapi.Expand(req.URL, map[string]string{
5202		"parent": c.parent,
5203	})
5204	return gensupport.SendRequest(c.ctx_, c.s.client, req)
5205}
5206
5207// Do executes the "healthcare.projects.locations.datasets.dicomStores.create" call.
5208// Exactly one of *DicomStore or error will be non-nil. Any non-2xx
5209// status code is an error. Response headers are in either
5210// *DicomStore.ServerResponse.Header or (if a response was returned at
5211// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
5212// to check whether the returned error was because
5213// http.StatusNotModified was returned.
5214func (c *ProjectsLocationsDatasetsDicomStoresCreateCall) Do(opts ...googleapi.CallOption) (*DicomStore, error) {
5215	gensupport.SetOptions(c.urlParams_, opts...)
5216	res, err := c.doRequest("json")
5217	if res != nil && res.StatusCode == http.StatusNotModified {
5218		if res.Body != nil {
5219			res.Body.Close()
5220		}
5221		return nil, &googleapi.Error{
5222			Code:   res.StatusCode,
5223			Header: res.Header,
5224		}
5225	}
5226	if err != nil {
5227		return nil, err
5228	}
5229	defer googleapi.CloseBody(res)
5230	if err := googleapi.CheckResponse(res); err != nil {
5231		return nil, err
5232	}
5233	ret := &DicomStore{
5234		ServerResponse: googleapi.ServerResponse{
5235			Header:         res.Header,
5236			HTTPStatusCode: res.StatusCode,
5237		},
5238	}
5239	target := &ret
5240	if err := gensupport.DecodeResponse(target, res); err != nil {
5241		return nil, err
5242	}
5243	return ret, nil
5244	// {
5245	//   "description": "Creates a new DICOM store within the parent dataset.",
5246	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores",
5247	//   "httpMethod": "POST",
5248	//   "id": "healthcare.projects.locations.datasets.dicomStores.create",
5249	//   "parameterOrder": [
5250	//     "parent"
5251	//   ],
5252	//   "parameters": {
5253	//     "dicomStoreId": {
5254	//       "description": "The ID of the DICOM store that is being created.\nAny string value up to 256 characters in length.",
5255	//       "location": "query",
5256	//       "type": "string"
5257	//     },
5258	//     "parent": {
5259	//       "description": "The name of the dataset this DICOM store belongs to.",
5260	//       "location": "path",
5261	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
5262	//       "required": true,
5263	//       "type": "string"
5264	//     }
5265	//   },
5266	//   "path": "v1beta1/{+parent}/dicomStores",
5267	//   "request": {
5268	//     "$ref": "DicomStore"
5269	//   },
5270	//   "response": {
5271	//     "$ref": "DicomStore"
5272	//   },
5273	//   "scopes": [
5274	//     "https://www.googleapis.com/auth/cloud-platform"
5275	//   ]
5276	// }
5277
5278}
5279
5280// method id "healthcare.projects.locations.datasets.dicomStores.delete":
5281
5282type ProjectsLocationsDatasetsDicomStoresDeleteCall struct {
5283	s          *Service
5284	name       string
5285	urlParams_ gensupport.URLParams
5286	ctx_       context.Context
5287	header_    http.Header
5288}
5289
5290// Delete: Deletes the specified DICOM store and removes all images that
5291// are contained
5292// within it.
5293func (r *ProjectsLocationsDatasetsDicomStoresService) Delete(name string) *ProjectsLocationsDatasetsDicomStoresDeleteCall {
5294	c := &ProjectsLocationsDatasetsDicomStoresDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
5295	c.name = name
5296	return c
5297}
5298
5299// Fields allows partial responses to be retrieved. See
5300// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
5301// for more information.
5302func (c *ProjectsLocationsDatasetsDicomStoresDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresDeleteCall {
5303	c.urlParams_.Set("fields", googleapi.CombineFields(s))
5304	return c
5305}
5306
5307// Context sets the context to be used in this call's Do method. Any
5308// pending HTTP request will be aborted if the provided context is
5309// canceled.
5310func (c *ProjectsLocationsDatasetsDicomStoresDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresDeleteCall {
5311	c.ctx_ = ctx
5312	return c
5313}
5314
5315// Header returns an http.Header that can be modified by the caller to
5316// add HTTP headers to the request.
5317func (c *ProjectsLocationsDatasetsDicomStoresDeleteCall) Header() http.Header {
5318	if c.header_ == nil {
5319		c.header_ = make(http.Header)
5320	}
5321	return c.header_
5322}
5323
5324func (c *ProjectsLocationsDatasetsDicomStoresDeleteCall) doRequest(alt string) (*http.Response, error) {
5325	reqHeaders := make(http.Header)
5326	for k, v := range c.header_ {
5327		reqHeaders[k] = v
5328	}
5329	reqHeaders.Set("User-Agent", c.s.userAgent())
5330	var body io.Reader = nil
5331	c.urlParams_.Set("alt", alt)
5332	c.urlParams_.Set("prettyPrint", "false")
5333	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
5334	urls += "?" + c.urlParams_.Encode()
5335	req, err := http.NewRequest("DELETE", urls, body)
5336	if err != nil {
5337		return nil, err
5338	}
5339	req.Header = reqHeaders
5340	googleapi.Expand(req.URL, map[string]string{
5341		"name": c.name,
5342	})
5343	return gensupport.SendRequest(c.ctx_, c.s.client, req)
5344}
5345
5346// Do executes the "healthcare.projects.locations.datasets.dicomStores.delete" call.
5347// Exactly one of *Empty or error will be non-nil. Any non-2xx status
5348// code is an error. Response headers are in either
5349// *Empty.ServerResponse.Header or (if a response was returned at all)
5350// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
5351// check whether the returned error was because http.StatusNotModified
5352// was returned.
5353func (c *ProjectsLocationsDatasetsDicomStoresDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
5354	gensupport.SetOptions(c.urlParams_, opts...)
5355	res, err := c.doRequest("json")
5356	if res != nil && res.StatusCode == http.StatusNotModified {
5357		if res.Body != nil {
5358			res.Body.Close()
5359		}
5360		return nil, &googleapi.Error{
5361			Code:   res.StatusCode,
5362			Header: res.Header,
5363		}
5364	}
5365	if err != nil {
5366		return nil, err
5367	}
5368	defer googleapi.CloseBody(res)
5369	if err := googleapi.CheckResponse(res); err != nil {
5370		return nil, err
5371	}
5372	ret := &Empty{
5373		ServerResponse: googleapi.ServerResponse{
5374			Header:         res.Header,
5375			HTTPStatusCode: res.StatusCode,
5376		},
5377	}
5378	target := &ret
5379	if err := gensupport.DecodeResponse(target, res); err != nil {
5380		return nil, err
5381	}
5382	return ret, nil
5383	// {
5384	//   "description": "Deletes the specified DICOM store and removes all images that are contained\nwithin it.",
5385	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}",
5386	//   "httpMethod": "DELETE",
5387	//   "id": "healthcare.projects.locations.datasets.dicomStores.delete",
5388	//   "parameterOrder": [
5389	//     "name"
5390	//   ],
5391	//   "parameters": {
5392	//     "name": {
5393	//       "description": "The resource name of the DICOM store to delete.",
5394	//       "location": "path",
5395	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
5396	//       "required": true,
5397	//       "type": "string"
5398	//     }
5399	//   },
5400	//   "path": "v1beta1/{+name}",
5401	//   "response": {
5402	//     "$ref": "Empty"
5403	//   },
5404	//   "scopes": [
5405	//     "https://www.googleapis.com/auth/cloud-platform"
5406	//   ]
5407	// }
5408
5409}
5410
5411// method id "healthcare.projects.locations.datasets.dicomStores.export":
5412
5413type ProjectsLocationsDatasetsDicomStoresExportCall struct {
5414	s                      *Service
5415	name                   string
5416	exportdicomdatarequest *ExportDicomDataRequest
5417	urlParams_             gensupport.URLParams
5418	ctx_                   context.Context
5419	header_                http.Header
5420}
5421
5422// Export: Exports data to the specified destination by copying it from
5423// the DICOM
5424// store.
5425// The metadata field type is
5426// OperationMetadata.
5427func (r *ProjectsLocationsDatasetsDicomStoresService) Export(name string, exportdicomdatarequest *ExportDicomDataRequest) *ProjectsLocationsDatasetsDicomStoresExportCall {
5428	c := &ProjectsLocationsDatasetsDicomStoresExportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
5429	c.name = name
5430	c.exportdicomdatarequest = exportdicomdatarequest
5431	return c
5432}
5433
5434// Fields allows partial responses to be retrieved. See
5435// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
5436// for more information.
5437func (c *ProjectsLocationsDatasetsDicomStoresExportCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresExportCall {
5438	c.urlParams_.Set("fields", googleapi.CombineFields(s))
5439	return c
5440}
5441
5442// Context sets the context to be used in this call's Do method. Any
5443// pending HTTP request will be aborted if the provided context is
5444// canceled.
5445func (c *ProjectsLocationsDatasetsDicomStoresExportCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresExportCall {
5446	c.ctx_ = ctx
5447	return c
5448}
5449
5450// Header returns an http.Header that can be modified by the caller to
5451// add HTTP headers to the request.
5452func (c *ProjectsLocationsDatasetsDicomStoresExportCall) Header() http.Header {
5453	if c.header_ == nil {
5454		c.header_ = make(http.Header)
5455	}
5456	return c.header_
5457}
5458
5459func (c *ProjectsLocationsDatasetsDicomStoresExportCall) doRequest(alt string) (*http.Response, error) {
5460	reqHeaders := make(http.Header)
5461	for k, v := range c.header_ {
5462		reqHeaders[k] = v
5463	}
5464	reqHeaders.Set("User-Agent", c.s.userAgent())
5465	var body io.Reader = nil
5466	body, err := googleapi.WithoutDataWrapper.JSONReader(c.exportdicomdatarequest)
5467	if err != nil {
5468		return nil, err
5469	}
5470	reqHeaders.Set("Content-Type", "application/json")
5471	c.urlParams_.Set("alt", alt)
5472	c.urlParams_.Set("prettyPrint", "false")
5473	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:export")
5474	urls += "?" + c.urlParams_.Encode()
5475	req, err := http.NewRequest("POST", urls, body)
5476	if err != nil {
5477		return nil, err
5478	}
5479	req.Header = reqHeaders
5480	googleapi.Expand(req.URL, map[string]string{
5481		"name": c.name,
5482	})
5483	return gensupport.SendRequest(c.ctx_, c.s.client, req)
5484}
5485
5486// Do executes the "healthcare.projects.locations.datasets.dicomStores.export" call.
5487// Exactly one of *Operation or error will be non-nil. Any non-2xx
5488// status code is an error. Response headers are in either
5489// *Operation.ServerResponse.Header or (if a response was returned at
5490// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
5491// to check whether the returned error was because
5492// http.StatusNotModified was returned.
5493func (c *ProjectsLocationsDatasetsDicomStoresExportCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
5494	gensupport.SetOptions(c.urlParams_, opts...)
5495	res, err := c.doRequest("json")
5496	if res != nil && res.StatusCode == http.StatusNotModified {
5497		if res.Body != nil {
5498			res.Body.Close()
5499		}
5500		return nil, &googleapi.Error{
5501			Code:   res.StatusCode,
5502			Header: res.Header,
5503		}
5504	}
5505	if err != nil {
5506		return nil, err
5507	}
5508	defer googleapi.CloseBody(res)
5509	if err := googleapi.CheckResponse(res); err != nil {
5510		return nil, err
5511	}
5512	ret := &Operation{
5513		ServerResponse: googleapi.ServerResponse{
5514			Header:         res.Header,
5515			HTTPStatusCode: res.StatusCode,
5516		},
5517	}
5518	target := &ret
5519	if err := gensupport.DecodeResponse(target, res); err != nil {
5520		return nil, err
5521	}
5522	return ret, nil
5523	// {
5524	//   "description": "Exports data to the specified destination by copying it from the DICOM\nstore.\nThe metadata field type is\nOperationMetadata.",
5525	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}:export",
5526	//   "httpMethod": "POST",
5527	//   "id": "healthcare.projects.locations.datasets.dicomStores.export",
5528	//   "parameterOrder": [
5529	//     "name"
5530	//   ],
5531	//   "parameters": {
5532	//     "name": {
5533	//       "description": "The DICOM store resource name from which the data should be exported (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
5534	//       "location": "path",
5535	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
5536	//       "required": true,
5537	//       "type": "string"
5538	//     }
5539	//   },
5540	//   "path": "v1beta1/{+name}:export",
5541	//   "request": {
5542	//     "$ref": "ExportDicomDataRequest"
5543	//   },
5544	//   "response": {
5545	//     "$ref": "Operation"
5546	//   },
5547	//   "scopes": [
5548	//     "https://www.googleapis.com/auth/cloud-platform"
5549	//   ]
5550	// }
5551
5552}
5553
5554// method id "healthcare.projects.locations.datasets.dicomStores.get":
5555
5556type ProjectsLocationsDatasetsDicomStoresGetCall struct {
5557	s            *Service
5558	name         string
5559	urlParams_   gensupport.URLParams
5560	ifNoneMatch_ string
5561	ctx_         context.Context
5562	header_      http.Header
5563}
5564
5565// Get: Gets the specified DICOM store.
5566func (r *ProjectsLocationsDatasetsDicomStoresService) Get(name string) *ProjectsLocationsDatasetsDicomStoresGetCall {
5567	c := &ProjectsLocationsDatasetsDicomStoresGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
5568	c.name = name
5569	return c
5570}
5571
5572// Fields allows partial responses to be retrieved. See
5573// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
5574// for more information.
5575func (c *ProjectsLocationsDatasetsDicomStoresGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresGetCall {
5576	c.urlParams_.Set("fields", googleapi.CombineFields(s))
5577	return c
5578}
5579
5580// IfNoneMatch sets the optional parameter which makes the operation
5581// fail if the object's ETag matches the given value. This is useful for
5582// getting updates only after the object has changed since the last
5583// request. Use googleapi.IsNotModified to check whether the response
5584// error from Do is the result of In-None-Match.
5585func (c *ProjectsLocationsDatasetsDicomStoresGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresGetCall {
5586	c.ifNoneMatch_ = entityTag
5587	return c
5588}
5589
5590// Context sets the context to be used in this call's Do method. Any
5591// pending HTTP request will be aborted if the provided context is
5592// canceled.
5593func (c *ProjectsLocationsDatasetsDicomStoresGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresGetCall {
5594	c.ctx_ = ctx
5595	return c
5596}
5597
5598// Header returns an http.Header that can be modified by the caller to
5599// add HTTP headers to the request.
5600func (c *ProjectsLocationsDatasetsDicomStoresGetCall) Header() http.Header {
5601	if c.header_ == nil {
5602		c.header_ = make(http.Header)
5603	}
5604	return c.header_
5605}
5606
5607func (c *ProjectsLocationsDatasetsDicomStoresGetCall) doRequest(alt string) (*http.Response, error) {
5608	reqHeaders := make(http.Header)
5609	for k, v := range c.header_ {
5610		reqHeaders[k] = v
5611	}
5612	reqHeaders.Set("User-Agent", c.s.userAgent())
5613	if c.ifNoneMatch_ != "" {
5614		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
5615	}
5616	var body io.Reader = nil
5617	c.urlParams_.Set("alt", alt)
5618	c.urlParams_.Set("prettyPrint", "false")
5619	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
5620	urls += "?" + c.urlParams_.Encode()
5621	req, err := http.NewRequest("GET", urls, body)
5622	if err != nil {
5623		return nil, err
5624	}
5625	req.Header = reqHeaders
5626	googleapi.Expand(req.URL, map[string]string{
5627		"name": c.name,
5628	})
5629	return gensupport.SendRequest(c.ctx_, c.s.client, req)
5630}
5631
5632// Do executes the "healthcare.projects.locations.datasets.dicomStores.get" call.
5633// Exactly one of *DicomStore or error will be non-nil. Any non-2xx
5634// status code is an error. Response headers are in either
5635// *DicomStore.ServerResponse.Header or (if a response was returned at
5636// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
5637// to check whether the returned error was because
5638// http.StatusNotModified was returned.
5639func (c *ProjectsLocationsDatasetsDicomStoresGetCall) Do(opts ...googleapi.CallOption) (*DicomStore, error) {
5640	gensupport.SetOptions(c.urlParams_, opts...)
5641	res, err := c.doRequest("json")
5642	if res != nil && res.StatusCode == http.StatusNotModified {
5643		if res.Body != nil {
5644			res.Body.Close()
5645		}
5646		return nil, &googleapi.Error{
5647			Code:   res.StatusCode,
5648			Header: res.Header,
5649		}
5650	}
5651	if err != nil {
5652		return nil, err
5653	}
5654	defer googleapi.CloseBody(res)
5655	if err := googleapi.CheckResponse(res); err != nil {
5656		return nil, err
5657	}
5658	ret := &DicomStore{
5659		ServerResponse: googleapi.ServerResponse{
5660			Header:         res.Header,
5661			HTTPStatusCode: res.StatusCode,
5662		},
5663	}
5664	target := &ret
5665	if err := gensupport.DecodeResponse(target, res); err != nil {
5666		return nil, err
5667	}
5668	return ret, nil
5669	// {
5670	//   "description": "Gets the specified DICOM store.",
5671	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}",
5672	//   "httpMethod": "GET",
5673	//   "id": "healthcare.projects.locations.datasets.dicomStores.get",
5674	//   "parameterOrder": [
5675	//     "name"
5676	//   ],
5677	//   "parameters": {
5678	//     "name": {
5679	//       "description": "The resource name of the DICOM store to get.",
5680	//       "location": "path",
5681	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
5682	//       "required": true,
5683	//       "type": "string"
5684	//     }
5685	//   },
5686	//   "path": "v1beta1/{+name}",
5687	//   "response": {
5688	//     "$ref": "DicomStore"
5689	//   },
5690	//   "scopes": [
5691	//     "https://www.googleapis.com/auth/cloud-platform"
5692	//   ]
5693	// }
5694
5695}
5696
5697// method id "healthcare.projects.locations.datasets.dicomStores.getIamPolicy":
5698
5699type ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall struct {
5700	s            *Service
5701	resource     string
5702	urlParams_   gensupport.URLParams
5703	ifNoneMatch_ string
5704	ctx_         context.Context
5705	header_      http.Header
5706}
5707
5708// GetIamPolicy: Gets the access control policy for a resource.
5709// Returns an empty policy if the resource exists and does not have a
5710// policy
5711// set.
5712func (r *ProjectsLocationsDatasetsDicomStoresService) GetIamPolicy(resource string) *ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall {
5713	c := &ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
5714	c.resource = resource
5715	return c
5716}
5717
5718// Fields allows partial responses to be retrieved. See
5719// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
5720// for more information.
5721func (c *ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall {
5722	c.urlParams_.Set("fields", googleapi.CombineFields(s))
5723	return c
5724}
5725
5726// IfNoneMatch sets the optional parameter which makes the operation
5727// fail if the object's ETag matches the given value. This is useful for
5728// getting updates only after the object has changed since the last
5729// request. Use googleapi.IsNotModified to check whether the response
5730// error from Do is the result of In-None-Match.
5731func (c *ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall {
5732	c.ifNoneMatch_ = entityTag
5733	return c
5734}
5735
5736// Context sets the context to be used in this call's Do method. Any
5737// pending HTTP request will be aborted if the provided context is
5738// canceled.
5739func (c *ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall {
5740	c.ctx_ = ctx
5741	return c
5742}
5743
5744// Header returns an http.Header that can be modified by the caller to
5745// add HTTP headers to the request.
5746func (c *ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall) Header() http.Header {
5747	if c.header_ == nil {
5748		c.header_ = make(http.Header)
5749	}
5750	return c.header_
5751}
5752
5753func (c *ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
5754	reqHeaders := make(http.Header)
5755	for k, v := range c.header_ {
5756		reqHeaders[k] = v
5757	}
5758	reqHeaders.Set("User-Agent", c.s.userAgent())
5759	if c.ifNoneMatch_ != "" {
5760		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
5761	}
5762	var body io.Reader = nil
5763	c.urlParams_.Set("alt", alt)
5764	c.urlParams_.Set("prettyPrint", "false")
5765	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:getIamPolicy")
5766	urls += "?" + c.urlParams_.Encode()
5767	req, err := http.NewRequest("GET", urls, body)
5768	if err != nil {
5769		return nil, err
5770	}
5771	req.Header = reqHeaders
5772	googleapi.Expand(req.URL, map[string]string{
5773		"resource": c.resource,
5774	})
5775	return gensupport.SendRequest(c.ctx_, c.s.client, req)
5776}
5777
5778// Do executes the "healthcare.projects.locations.datasets.dicomStores.getIamPolicy" call.
5779// Exactly one of *Policy or error will be non-nil. Any non-2xx status
5780// code is an error. Response headers are in either
5781// *Policy.ServerResponse.Header or (if a response was returned at all)
5782// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
5783// check whether the returned error was because http.StatusNotModified
5784// was returned.
5785func (c *ProjectsLocationsDatasetsDicomStoresGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
5786	gensupport.SetOptions(c.urlParams_, opts...)
5787	res, err := c.doRequest("json")
5788	if res != nil && res.StatusCode == http.StatusNotModified {
5789		if res.Body != nil {
5790			res.Body.Close()
5791		}
5792		return nil, &googleapi.Error{
5793			Code:   res.StatusCode,
5794			Header: res.Header,
5795		}
5796	}
5797	if err != nil {
5798		return nil, err
5799	}
5800	defer googleapi.CloseBody(res)
5801	if err := googleapi.CheckResponse(res); err != nil {
5802		return nil, err
5803	}
5804	ret := &Policy{
5805		ServerResponse: googleapi.ServerResponse{
5806			Header:         res.Header,
5807			HTTPStatusCode: res.StatusCode,
5808		},
5809	}
5810	target := &ret
5811	if err := gensupport.DecodeResponse(target, res); err != nil {
5812		return nil, err
5813	}
5814	return ret, nil
5815	// {
5816	//   "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
5817	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}:getIamPolicy",
5818	//   "httpMethod": "GET",
5819	//   "id": "healthcare.projects.locations.datasets.dicomStores.getIamPolicy",
5820	//   "parameterOrder": [
5821	//     "resource"
5822	//   ],
5823	//   "parameters": {
5824	//     "resource": {
5825	//       "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
5826	//       "location": "path",
5827	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
5828	//       "required": true,
5829	//       "type": "string"
5830	//     }
5831	//   },
5832	//   "path": "v1beta1/{+resource}:getIamPolicy",
5833	//   "response": {
5834	//     "$ref": "Policy"
5835	//   },
5836	//   "scopes": [
5837	//     "https://www.googleapis.com/auth/cloud-platform"
5838	//   ]
5839	// }
5840
5841}
5842
5843// method id "healthcare.projects.locations.datasets.dicomStores.import":
5844
5845type ProjectsLocationsDatasetsDicomStoresImportCall struct {
5846	s                      *Service
5847	name                   string
5848	importdicomdatarequest *ImportDicomDataRequest
5849	urlParams_             gensupport.URLParams
5850	ctx_                   context.Context
5851	header_                http.Header
5852}
5853
5854// Import: Imports data into the DICOM store by copying it from the
5855// specified source.
5856// For errors, the Operation will be populated with error details (in
5857// the form
5858// of ImportDicomDataErrorDetails in error.details), which will
5859// hold
5860// finer-grained error information.
5861// The metadata field type is
5862// OperationMetadata.
5863func (r *ProjectsLocationsDatasetsDicomStoresService) Import(name string, importdicomdatarequest *ImportDicomDataRequest) *ProjectsLocationsDatasetsDicomStoresImportCall {
5864	c := &ProjectsLocationsDatasetsDicomStoresImportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
5865	c.name = name
5866	c.importdicomdatarequest = importdicomdatarequest
5867	return c
5868}
5869
5870// Fields allows partial responses to be retrieved. See
5871// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
5872// for more information.
5873func (c *ProjectsLocationsDatasetsDicomStoresImportCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresImportCall {
5874	c.urlParams_.Set("fields", googleapi.CombineFields(s))
5875	return c
5876}
5877
5878// Context sets the context to be used in this call's Do method. Any
5879// pending HTTP request will be aborted if the provided context is
5880// canceled.
5881func (c *ProjectsLocationsDatasetsDicomStoresImportCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresImportCall {
5882	c.ctx_ = ctx
5883	return c
5884}
5885
5886// Header returns an http.Header that can be modified by the caller to
5887// add HTTP headers to the request.
5888func (c *ProjectsLocationsDatasetsDicomStoresImportCall) Header() http.Header {
5889	if c.header_ == nil {
5890		c.header_ = make(http.Header)
5891	}
5892	return c.header_
5893}
5894
5895func (c *ProjectsLocationsDatasetsDicomStoresImportCall) doRequest(alt string) (*http.Response, error) {
5896	reqHeaders := make(http.Header)
5897	for k, v := range c.header_ {
5898		reqHeaders[k] = v
5899	}
5900	reqHeaders.Set("User-Agent", c.s.userAgent())
5901	var body io.Reader = nil
5902	body, err := googleapi.WithoutDataWrapper.JSONReader(c.importdicomdatarequest)
5903	if err != nil {
5904		return nil, err
5905	}
5906	reqHeaders.Set("Content-Type", "application/json")
5907	c.urlParams_.Set("alt", alt)
5908	c.urlParams_.Set("prettyPrint", "false")
5909	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:import")
5910	urls += "?" + c.urlParams_.Encode()
5911	req, err := http.NewRequest("POST", urls, body)
5912	if err != nil {
5913		return nil, err
5914	}
5915	req.Header = reqHeaders
5916	googleapi.Expand(req.URL, map[string]string{
5917		"name": c.name,
5918	})
5919	return gensupport.SendRequest(c.ctx_, c.s.client, req)
5920}
5921
5922// Do executes the "healthcare.projects.locations.datasets.dicomStores.import" call.
5923// Exactly one of *Operation or error will be non-nil. Any non-2xx
5924// status code is an error. Response headers are in either
5925// *Operation.ServerResponse.Header or (if a response was returned at
5926// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
5927// to check whether the returned error was because
5928// http.StatusNotModified was returned.
5929func (c *ProjectsLocationsDatasetsDicomStoresImportCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
5930	gensupport.SetOptions(c.urlParams_, opts...)
5931	res, err := c.doRequest("json")
5932	if res != nil && res.StatusCode == http.StatusNotModified {
5933		if res.Body != nil {
5934			res.Body.Close()
5935		}
5936		return nil, &googleapi.Error{
5937			Code:   res.StatusCode,
5938			Header: res.Header,
5939		}
5940	}
5941	if err != nil {
5942		return nil, err
5943	}
5944	defer googleapi.CloseBody(res)
5945	if err := googleapi.CheckResponse(res); err != nil {
5946		return nil, err
5947	}
5948	ret := &Operation{
5949		ServerResponse: googleapi.ServerResponse{
5950			Header:         res.Header,
5951			HTTPStatusCode: res.StatusCode,
5952		},
5953	}
5954	target := &ret
5955	if err := gensupport.DecodeResponse(target, res); err != nil {
5956		return nil, err
5957	}
5958	return ret, nil
5959	// {
5960	//   "description": "Imports data into the DICOM store by copying it from the specified source.\nFor errors, the Operation will be populated with error details (in the form\nof ImportDicomDataErrorDetails in error.details), which will hold\nfiner-grained error information.\nThe metadata field type is\nOperationMetadata.",
5961	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}:import",
5962	//   "httpMethod": "POST",
5963	//   "id": "healthcare.projects.locations.datasets.dicomStores.import",
5964	//   "parameterOrder": [
5965	//     "name"
5966	//   ],
5967	//   "parameters": {
5968	//     "name": {
5969	//       "description": "The name of the DICOM store resource into which the data is imported (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
5970	//       "location": "path",
5971	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
5972	//       "required": true,
5973	//       "type": "string"
5974	//     }
5975	//   },
5976	//   "path": "v1beta1/{+name}:import",
5977	//   "request": {
5978	//     "$ref": "ImportDicomDataRequest"
5979	//   },
5980	//   "response": {
5981	//     "$ref": "Operation"
5982	//   },
5983	//   "scopes": [
5984	//     "https://www.googleapis.com/auth/cloud-platform"
5985	//   ]
5986	// }
5987
5988}
5989
5990// method id "healthcare.projects.locations.datasets.dicomStores.list":
5991
5992type ProjectsLocationsDatasetsDicomStoresListCall struct {
5993	s            *Service
5994	parent       string
5995	urlParams_   gensupport.URLParams
5996	ifNoneMatch_ string
5997	ctx_         context.Context
5998	header_      http.Header
5999}
6000
6001// List: Lists the DICOM stores in the given dataset.
6002func (r *ProjectsLocationsDatasetsDicomStoresService) List(parent string) *ProjectsLocationsDatasetsDicomStoresListCall {
6003	c := &ProjectsLocationsDatasetsDicomStoresListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
6004	c.parent = parent
6005	return c
6006}
6007
6008// Filter sets the optional parameter "filter": Restricts stores
6009// returned to those matching a filter.
6010// Syntax:
6011// https://cloud.google.com/appengine/docs/standard/python/search
6012// /query_strings
6013// Only filtering on labels is supported, for example
6014// `labels.key=value`.
6015func (c *ProjectsLocationsDatasetsDicomStoresListCall) Filter(filter string) *ProjectsLocationsDatasetsDicomStoresListCall {
6016	c.urlParams_.Set("filter", filter)
6017	return c
6018}
6019
6020// PageSize sets the optional parameter "pageSize": Limit on the number
6021// of DICOM stores to return in a single response.
6022// If zero the default page size of 100 is used.
6023func (c *ProjectsLocationsDatasetsDicomStoresListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsDicomStoresListCall {
6024	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
6025	return c
6026}
6027
6028// PageToken sets the optional parameter "pageToken": The
6029// next_page_token value returned from the previous List request, if
6030// any.
6031func (c *ProjectsLocationsDatasetsDicomStoresListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsDicomStoresListCall {
6032	c.urlParams_.Set("pageToken", pageToken)
6033	return c
6034}
6035
6036// Fields allows partial responses to be retrieved. See
6037// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
6038// for more information.
6039func (c *ProjectsLocationsDatasetsDicomStoresListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresListCall {
6040	c.urlParams_.Set("fields", googleapi.CombineFields(s))
6041	return c
6042}
6043
6044// IfNoneMatch sets the optional parameter which makes the operation
6045// fail if the object's ETag matches the given value. This is useful for
6046// getting updates only after the object has changed since the last
6047// request. Use googleapi.IsNotModified to check whether the response
6048// error from Do is the result of In-None-Match.
6049func (c *ProjectsLocationsDatasetsDicomStoresListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresListCall {
6050	c.ifNoneMatch_ = entityTag
6051	return c
6052}
6053
6054// Context sets the context to be used in this call's Do method. Any
6055// pending HTTP request will be aborted if the provided context is
6056// canceled.
6057func (c *ProjectsLocationsDatasetsDicomStoresListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresListCall {
6058	c.ctx_ = ctx
6059	return c
6060}
6061
6062// Header returns an http.Header that can be modified by the caller to
6063// add HTTP headers to the request.
6064func (c *ProjectsLocationsDatasetsDicomStoresListCall) Header() http.Header {
6065	if c.header_ == nil {
6066		c.header_ = make(http.Header)
6067	}
6068	return c.header_
6069}
6070
6071func (c *ProjectsLocationsDatasetsDicomStoresListCall) doRequest(alt string) (*http.Response, error) {
6072	reqHeaders := make(http.Header)
6073	for k, v := range c.header_ {
6074		reqHeaders[k] = v
6075	}
6076	reqHeaders.Set("User-Agent", c.s.userAgent())
6077	if c.ifNoneMatch_ != "" {
6078		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
6079	}
6080	var body io.Reader = nil
6081	c.urlParams_.Set("alt", alt)
6082	c.urlParams_.Set("prettyPrint", "false")
6083	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/dicomStores")
6084	urls += "?" + c.urlParams_.Encode()
6085	req, err := http.NewRequest("GET", urls, body)
6086	if err != nil {
6087		return nil, err
6088	}
6089	req.Header = reqHeaders
6090	googleapi.Expand(req.URL, map[string]string{
6091		"parent": c.parent,
6092	})
6093	return gensupport.SendRequest(c.ctx_, c.s.client, req)
6094}
6095
6096// Do executes the "healthcare.projects.locations.datasets.dicomStores.list" call.
6097// Exactly one of *ListDicomStoresResponse or error will be non-nil. Any
6098// non-2xx status code is an error. Response headers are in either
6099// *ListDicomStoresResponse.ServerResponse.Header or (if a response was
6100// returned at all) in error.(*googleapi.Error).Header. Use
6101// googleapi.IsNotModified to check whether the returned error was
6102// because http.StatusNotModified was returned.
6103func (c *ProjectsLocationsDatasetsDicomStoresListCall) Do(opts ...googleapi.CallOption) (*ListDicomStoresResponse, error) {
6104	gensupport.SetOptions(c.urlParams_, opts...)
6105	res, err := c.doRequest("json")
6106	if res != nil && res.StatusCode == http.StatusNotModified {
6107		if res.Body != nil {
6108			res.Body.Close()
6109		}
6110		return nil, &googleapi.Error{
6111			Code:   res.StatusCode,
6112			Header: res.Header,
6113		}
6114	}
6115	if err != nil {
6116		return nil, err
6117	}
6118	defer googleapi.CloseBody(res)
6119	if err := googleapi.CheckResponse(res); err != nil {
6120		return nil, err
6121	}
6122	ret := &ListDicomStoresResponse{
6123		ServerResponse: googleapi.ServerResponse{
6124			Header:         res.Header,
6125			HTTPStatusCode: res.StatusCode,
6126		},
6127	}
6128	target := &ret
6129	if err := gensupport.DecodeResponse(target, res); err != nil {
6130		return nil, err
6131	}
6132	return ret, nil
6133	// {
6134	//   "description": "Lists the DICOM stores in the given dataset.",
6135	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores",
6136	//   "httpMethod": "GET",
6137	//   "id": "healthcare.projects.locations.datasets.dicomStores.list",
6138	//   "parameterOrder": [
6139	//     "parent"
6140	//   ],
6141	//   "parameters": {
6142	//     "filter": {
6143	//       "description": "Restricts stores returned to those matching a filter. Syntax:\nhttps://cloud.google.com/appengine/docs/standard/python/search/query_strings\nOnly filtering on labels is supported, for example `labels.key=value`.",
6144	//       "location": "query",
6145	//       "type": "string"
6146	//     },
6147	//     "pageSize": {
6148	//       "description": "Limit on the number of DICOM stores to return in a single response.\nIf zero the default page size of 100 is used.",
6149	//       "format": "int32",
6150	//       "location": "query",
6151	//       "type": "integer"
6152	//     },
6153	//     "pageToken": {
6154	//       "description": "The next_page_token value returned from the previous List request, if any.",
6155	//       "location": "query",
6156	//       "type": "string"
6157	//     },
6158	//     "parent": {
6159	//       "description": "Name of the dataset.",
6160	//       "location": "path",
6161	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
6162	//       "required": true,
6163	//       "type": "string"
6164	//     }
6165	//   },
6166	//   "path": "v1beta1/{+parent}/dicomStores",
6167	//   "response": {
6168	//     "$ref": "ListDicomStoresResponse"
6169	//   },
6170	//   "scopes": [
6171	//     "https://www.googleapis.com/auth/cloud-platform"
6172	//   ]
6173	// }
6174
6175}
6176
6177// Pages invokes f for each page of results.
6178// A non-nil error returned from f will halt the iteration.
6179// The provided context supersedes any context provided to the Context method.
6180func (c *ProjectsLocationsDatasetsDicomStoresListCall) Pages(ctx context.Context, f func(*ListDicomStoresResponse) error) error {
6181	c.ctx_ = ctx
6182	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
6183	for {
6184		x, err := c.Do()
6185		if err != nil {
6186			return err
6187		}
6188		if err := f(x); err != nil {
6189			return err
6190		}
6191		if x.NextPageToken == "" {
6192			return nil
6193		}
6194		c.PageToken(x.NextPageToken)
6195	}
6196}
6197
6198// method id "healthcare.projects.locations.datasets.dicomStores.patch":
6199
6200type ProjectsLocationsDatasetsDicomStoresPatchCall struct {
6201	s          *Service
6202	name       string
6203	dicomstore *DicomStore
6204	urlParams_ gensupport.URLParams
6205	ctx_       context.Context
6206	header_    http.Header
6207}
6208
6209// Patch: Updates the specified DICOM store.
6210func (r *ProjectsLocationsDatasetsDicomStoresService) Patch(name string, dicomstore *DicomStore) *ProjectsLocationsDatasetsDicomStoresPatchCall {
6211	c := &ProjectsLocationsDatasetsDicomStoresPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
6212	c.name = name
6213	c.dicomstore = dicomstore
6214	return c
6215}
6216
6217// UpdateMask sets the optional parameter "updateMask": The update mask
6218// applies to the resource. For the `FieldMask`
6219// definition,
6220// see
6221// https://developers.google.com/protocol-buffers/docs/re
6222// ference/google.protobuf#fieldmask
6223func (c *ProjectsLocationsDatasetsDicomStoresPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDatasetsDicomStoresPatchCall {
6224	c.urlParams_.Set("updateMask", updateMask)
6225	return c
6226}
6227
6228// Fields allows partial responses to be retrieved. See
6229// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
6230// for more information.
6231func (c *ProjectsLocationsDatasetsDicomStoresPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresPatchCall {
6232	c.urlParams_.Set("fields", googleapi.CombineFields(s))
6233	return c
6234}
6235
6236// Context sets the context to be used in this call's Do method. Any
6237// pending HTTP request will be aborted if the provided context is
6238// canceled.
6239func (c *ProjectsLocationsDatasetsDicomStoresPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresPatchCall {
6240	c.ctx_ = ctx
6241	return c
6242}
6243
6244// Header returns an http.Header that can be modified by the caller to
6245// add HTTP headers to the request.
6246func (c *ProjectsLocationsDatasetsDicomStoresPatchCall) Header() http.Header {
6247	if c.header_ == nil {
6248		c.header_ = make(http.Header)
6249	}
6250	return c.header_
6251}
6252
6253func (c *ProjectsLocationsDatasetsDicomStoresPatchCall) doRequest(alt string) (*http.Response, error) {
6254	reqHeaders := make(http.Header)
6255	for k, v := range c.header_ {
6256		reqHeaders[k] = v
6257	}
6258	reqHeaders.Set("User-Agent", c.s.userAgent())
6259	var body io.Reader = nil
6260	body, err := googleapi.WithoutDataWrapper.JSONReader(c.dicomstore)
6261	if err != nil {
6262		return nil, err
6263	}
6264	reqHeaders.Set("Content-Type", "application/json")
6265	c.urlParams_.Set("alt", alt)
6266	c.urlParams_.Set("prettyPrint", "false")
6267	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
6268	urls += "?" + c.urlParams_.Encode()
6269	req, err := http.NewRequest("PATCH", urls, body)
6270	if err != nil {
6271		return nil, err
6272	}
6273	req.Header = reqHeaders
6274	googleapi.Expand(req.URL, map[string]string{
6275		"name": c.name,
6276	})
6277	return gensupport.SendRequest(c.ctx_, c.s.client, req)
6278}
6279
6280// Do executes the "healthcare.projects.locations.datasets.dicomStores.patch" call.
6281// Exactly one of *DicomStore or error will be non-nil. Any non-2xx
6282// status code is an error. Response headers are in either
6283// *DicomStore.ServerResponse.Header or (if a response was returned at
6284// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
6285// to check whether the returned error was because
6286// http.StatusNotModified was returned.
6287func (c *ProjectsLocationsDatasetsDicomStoresPatchCall) Do(opts ...googleapi.CallOption) (*DicomStore, error) {
6288	gensupport.SetOptions(c.urlParams_, opts...)
6289	res, err := c.doRequest("json")
6290	if res != nil && res.StatusCode == http.StatusNotModified {
6291		if res.Body != nil {
6292			res.Body.Close()
6293		}
6294		return nil, &googleapi.Error{
6295			Code:   res.StatusCode,
6296			Header: res.Header,
6297		}
6298	}
6299	if err != nil {
6300		return nil, err
6301	}
6302	defer googleapi.CloseBody(res)
6303	if err := googleapi.CheckResponse(res); err != nil {
6304		return nil, err
6305	}
6306	ret := &DicomStore{
6307		ServerResponse: googleapi.ServerResponse{
6308			Header:         res.Header,
6309			HTTPStatusCode: res.StatusCode,
6310		},
6311	}
6312	target := &ret
6313	if err := gensupport.DecodeResponse(target, res); err != nil {
6314		return nil, err
6315	}
6316	return ret, nil
6317	// {
6318	//   "description": "Updates the specified DICOM store.",
6319	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}",
6320	//   "httpMethod": "PATCH",
6321	//   "id": "healthcare.projects.locations.datasets.dicomStores.patch",
6322	//   "parameterOrder": [
6323	//     "name"
6324	//   ],
6325	//   "parameters": {
6326	//     "name": {
6327	//       "description": "Output only. Resource name of the DICOM store, of the form\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`.",
6328	//       "location": "path",
6329	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
6330	//       "required": true,
6331	//       "type": "string"
6332	//     },
6333	//     "updateMask": {
6334	//       "description": "The update mask applies to the resource. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask",
6335	//       "format": "google-fieldmask",
6336	//       "location": "query",
6337	//       "type": "string"
6338	//     }
6339	//   },
6340	//   "path": "v1beta1/{+name}",
6341	//   "request": {
6342	//     "$ref": "DicomStore"
6343	//   },
6344	//   "response": {
6345	//     "$ref": "DicomStore"
6346	//   },
6347	//   "scopes": [
6348	//     "https://www.googleapis.com/auth/cloud-platform"
6349	//   ]
6350	// }
6351
6352}
6353
6354// method id "healthcare.projects.locations.datasets.dicomStores.searchForInstances":
6355
6356type ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall struct {
6357	s            *Service
6358	parent       string
6359	dicomWebPath string
6360	urlParams_   gensupport.URLParams
6361	ifNoneMatch_ string
6362	ctx_         context.Context
6363	header_      http.Header
6364}
6365
6366// SearchForInstances: SearchForInstances returns a list of matching
6367// instances.
6368// See
6369// http://dicom.nema.org/medical/dicom/current/output/html/part18.htm
6370// l#sect_10.6.
6371func (r *ProjectsLocationsDatasetsDicomStoresService) SearchForInstances(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall {
6372	c := &ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
6373	c.parent = parent
6374	c.dicomWebPath = dicomWebPath
6375	return c
6376}
6377
6378// Fields allows partial responses to be retrieved. See
6379// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
6380// for more information.
6381func (c *ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall {
6382	c.urlParams_.Set("fields", googleapi.CombineFields(s))
6383	return c
6384}
6385
6386// IfNoneMatch sets the optional parameter which makes the operation
6387// fail if the object's ETag matches the given value. This is useful for
6388// getting updates only after the object has changed since the last
6389// request. Use googleapi.IsNotModified to check whether the response
6390// error from Do is the result of In-None-Match.
6391func (c *ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall {
6392	c.ifNoneMatch_ = entityTag
6393	return c
6394}
6395
6396// Context sets the context to be used in this call's Do method. Any
6397// pending HTTP request will be aborted if the provided context is
6398// canceled.
6399func (c *ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall {
6400	c.ctx_ = ctx
6401	return c
6402}
6403
6404// Header returns an http.Header that can be modified by the caller to
6405// add HTTP headers to the request.
6406func (c *ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall) Header() http.Header {
6407	if c.header_ == nil {
6408		c.header_ = make(http.Header)
6409	}
6410	return c.header_
6411}
6412
6413func (c *ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall) doRequest(alt string) (*http.Response, error) {
6414	reqHeaders := make(http.Header)
6415	for k, v := range c.header_ {
6416		reqHeaders[k] = v
6417	}
6418	reqHeaders.Set("User-Agent", c.s.userAgent())
6419	if c.ifNoneMatch_ != "" {
6420		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
6421	}
6422	var body io.Reader = nil
6423	c.urlParams_.Set("alt", alt)
6424	c.urlParams_.Set("prettyPrint", "false")
6425	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}")
6426	urls += "?" + c.urlParams_.Encode()
6427	req, err := http.NewRequest("GET", urls, body)
6428	if err != nil {
6429		return nil, err
6430	}
6431	req.Header = reqHeaders
6432	googleapi.Expand(req.URL, map[string]string{
6433		"parent":       c.parent,
6434		"dicomWebPath": c.dicomWebPath,
6435	})
6436	return gensupport.SendRequest(c.ctx_, c.s.client, req)
6437}
6438
6439// Do executes the "healthcare.projects.locations.datasets.dicomStores.searchForInstances" call.
6440func (c *ProjectsLocationsDatasetsDicomStoresSearchForInstancesCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
6441	gensupport.SetOptions(c.urlParams_, opts...)
6442	return c.doRequest("")
6443	// {
6444	//   "description": "SearchForInstances returns a list of matching instances. See\nhttp://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.6.",
6445	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/instances",
6446	//   "httpMethod": "GET",
6447	//   "id": "healthcare.projects.locations.datasets.dicomStores.searchForInstances",
6448	//   "parameterOrder": [
6449	//     "parent",
6450	//     "dicomWebPath"
6451	//   ],
6452	//   "parameters": {
6453	//     "dicomWebPath": {
6454	//       "description": "The path of the SearchForInstancesRequest DICOMweb request (e.g.,\n`instances` or `series/{series_uid}/instances` or\n`studies/{study_uid}/instances`).",
6455	//       "location": "path",
6456	//       "pattern": "^instances$",
6457	//       "required": true,
6458	//       "type": "string"
6459	//     },
6460	//     "parent": {
6461	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
6462	//       "location": "path",
6463	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
6464	//       "required": true,
6465	//       "type": "string"
6466	//     }
6467	//   },
6468	//   "path": "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}",
6469	//   "response": {
6470	//     "$ref": "HttpBody"
6471	//   },
6472	//   "scopes": [
6473	//     "https://www.googleapis.com/auth/cloud-platform"
6474	//   ]
6475	// }
6476
6477}
6478
6479// method id "healthcare.projects.locations.datasets.dicomStores.searchForSeries":
6480
6481type ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall struct {
6482	s            *Service
6483	parent       string
6484	dicomWebPath string
6485	urlParams_   gensupport.URLParams
6486	ifNoneMatch_ string
6487	ctx_         context.Context
6488	header_      http.Header
6489}
6490
6491// SearchForSeries: SearchForSeries returns a list of matching series.
6492// See
6493// http://dicom.nema.org/medical/dicom/current/output/html/part18.htm
6494// l#sect_10.6.
6495func (r *ProjectsLocationsDatasetsDicomStoresService) SearchForSeries(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall {
6496	c := &ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
6497	c.parent = parent
6498	c.dicomWebPath = dicomWebPath
6499	return c
6500}
6501
6502// Fields allows partial responses to be retrieved. See
6503// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
6504// for more information.
6505func (c *ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall {
6506	c.urlParams_.Set("fields", googleapi.CombineFields(s))
6507	return c
6508}
6509
6510// IfNoneMatch sets the optional parameter which makes the operation
6511// fail if the object's ETag matches the given value. This is useful for
6512// getting updates only after the object has changed since the last
6513// request. Use googleapi.IsNotModified to check whether the response
6514// error from Do is the result of In-None-Match.
6515func (c *ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall {
6516	c.ifNoneMatch_ = entityTag
6517	return c
6518}
6519
6520// Context sets the context to be used in this call's Do method. Any
6521// pending HTTP request will be aborted if the provided context is
6522// canceled.
6523func (c *ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall {
6524	c.ctx_ = ctx
6525	return c
6526}
6527
6528// Header returns an http.Header that can be modified by the caller to
6529// add HTTP headers to the request.
6530func (c *ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall) Header() http.Header {
6531	if c.header_ == nil {
6532		c.header_ = make(http.Header)
6533	}
6534	return c.header_
6535}
6536
6537func (c *ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall) doRequest(alt string) (*http.Response, error) {
6538	reqHeaders := make(http.Header)
6539	for k, v := range c.header_ {
6540		reqHeaders[k] = v
6541	}
6542	reqHeaders.Set("User-Agent", c.s.userAgent())
6543	if c.ifNoneMatch_ != "" {
6544		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
6545	}
6546	var body io.Reader = nil
6547	c.urlParams_.Set("alt", alt)
6548	c.urlParams_.Set("prettyPrint", "false")
6549	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}")
6550	urls += "?" + c.urlParams_.Encode()
6551	req, err := http.NewRequest("GET", urls, body)
6552	if err != nil {
6553		return nil, err
6554	}
6555	req.Header = reqHeaders
6556	googleapi.Expand(req.URL, map[string]string{
6557		"parent":       c.parent,
6558		"dicomWebPath": c.dicomWebPath,
6559	})
6560	return gensupport.SendRequest(c.ctx_, c.s.client, req)
6561}
6562
6563// Do executes the "healthcare.projects.locations.datasets.dicomStores.searchForSeries" call.
6564func (c *ProjectsLocationsDatasetsDicomStoresSearchForSeriesCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
6565	gensupport.SetOptions(c.urlParams_, opts...)
6566	return c.doRequest("")
6567	// {
6568	//   "description": "SearchForSeries returns a list of matching series. See\nhttp://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.6.",
6569	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/series",
6570	//   "httpMethod": "GET",
6571	//   "id": "healthcare.projects.locations.datasets.dicomStores.searchForSeries",
6572	//   "parameterOrder": [
6573	//     "parent",
6574	//     "dicomWebPath"
6575	//   ],
6576	//   "parameters": {
6577	//     "dicomWebPath": {
6578	//       "description": "The path of the SearchForSeries DICOMweb request(e.g., `series` or\n`studies/{study_uid}/series`).",
6579	//       "location": "path",
6580	//       "pattern": "^series$",
6581	//       "required": true,
6582	//       "type": "string"
6583	//     },
6584	//     "parent": {
6585	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
6586	//       "location": "path",
6587	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
6588	//       "required": true,
6589	//       "type": "string"
6590	//     }
6591	//   },
6592	//   "path": "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}",
6593	//   "response": {
6594	//     "$ref": "HttpBody"
6595	//   },
6596	//   "scopes": [
6597	//     "https://www.googleapis.com/auth/cloud-platform"
6598	//   ]
6599	// }
6600
6601}
6602
6603// method id "healthcare.projects.locations.datasets.dicomStores.searchForStudies":
6604
6605type ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall struct {
6606	s            *Service
6607	parent       string
6608	dicomWebPath string
6609	urlParams_   gensupport.URLParams
6610	ifNoneMatch_ string
6611	ctx_         context.Context
6612	header_      http.Header
6613}
6614
6615// SearchForStudies: SearchForStudies returns a list of matching
6616// studies.
6617// See
6618// http://dicom.nema.org/medical/dicom/current/output/html/part18.htm
6619// l#sect_10.6.
6620func (r *ProjectsLocationsDatasetsDicomStoresService) SearchForStudies(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall {
6621	c := &ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
6622	c.parent = parent
6623	c.dicomWebPath = dicomWebPath
6624	return c
6625}
6626
6627// Fields allows partial responses to be retrieved. See
6628// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
6629// for more information.
6630func (c *ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall {
6631	c.urlParams_.Set("fields", googleapi.CombineFields(s))
6632	return c
6633}
6634
6635// IfNoneMatch sets the optional parameter which makes the operation
6636// fail if the object's ETag matches the given value. This is useful for
6637// getting updates only after the object has changed since the last
6638// request. Use googleapi.IsNotModified to check whether the response
6639// error from Do is the result of In-None-Match.
6640func (c *ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall {
6641	c.ifNoneMatch_ = entityTag
6642	return c
6643}
6644
6645// Context sets the context to be used in this call's Do method. Any
6646// pending HTTP request will be aborted if the provided context is
6647// canceled.
6648func (c *ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall {
6649	c.ctx_ = ctx
6650	return c
6651}
6652
6653// Header returns an http.Header that can be modified by the caller to
6654// add HTTP headers to the request.
6655func (c *ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall) Header() http.Header {
6656	if c.header_ == nil {
6657		c.header_ = make(http.Header)
6658	}
6659	return c.header_
6660}
6661
6662func (c *ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall) doRequest(alt string) (*http.Response, error) {
6663	reqHeaders := make(http.Header)
6664	for k, v := range c.header_ {
6665		reqHeaders[k] = v
6666	}
6667	reqHeaders.Set("User-Agent", c.s.userAgent())
6668	if c.ifNoneMatch_ != "" {
6669		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
6670	}
6671	var body io.Reader = nil
6672	c.urlParams_.Set("alt", alt)
6673	c.urlParams_.Set("prettyPrint", "false")
6674	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}")
6675	urls += "?" + c.urlParams_.Encode()
6676	req, err := http.NewRequest("GET", urls, body)
6677	if err != nil {
6678		return nil, err
6679	}
6680	req.Header = reqHeaders
6681	googleapi.Expand(req.URL, map[string]string{
6682		"parent":       c.parent,
6683		"dicomWebPath": c.dicomWebPath,
6684	})
6685	return gensupport.SendRequest(c.ctx_, c.s.client, req)
6686}
6687
6688// Do executes the "healthcare.projects.locations.datasets.dicomStores.searchForStudies" call.
6689func (c *ProjectsLocationsDatasetsDicomStoresSearchForStudiesCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
6690	gensupport.SetOptions(c.urlParams_, opts...)
6691	return c.doRequest("")
6692	// {
6693	//   "description": "SearchForStudies returns a list of matching studies. See\nhttp://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.6.",
6694	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/studies",
6695	//   "httpMethod": "GET",
6696	//   "id": "healthcare.projects.locations.datasets.dicomStores.searchForStudies",
6697	//   "parameterOrder": [
6698	//     "parent",
6699	//     "dicomWebPath"
6700	//   ],
6701	//   "parameters": {
6702	//     "dicomWebPath": {
6703	//       "description": "The path of the SearchForStudies DICOMweb request (e.g., `studies`).",
6704	//       "location": "path",
6705	//       "pattern": "^studies$",
6706	//       "required": true,
6707	//       "type": "string"
6708	//     },
6709	//     "parent": {
6710	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
6711	//       "location": "path",
6712	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
6713	//       "required": true,
6714	//       "type": "string"
6715	//     }
6716	//   },
6717	//   "path": "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}",
6718	//   "response": {
6719	//     "$ref": "HttpBody"
6720	//   },
6721	//   "scopes": [
6722	//     "https://www.googleapis.com/auth/cloud-platform"
6723	//   ]
6724	// }
6725
6726}
6727
6728// method id "healthcare.projects.locations.datasets.dicomStores.setIamPolicy":
6729
6730type ProjectsLocationsDatasetsDicomStoresSetIamPolicyCall struct {
6731	s                   *Service
6732	resource            string
6733	setiampolicyrequest *SetIamPolicyRequest
6734	urlParams_          gensupport.URLParams
6735	ctx_                context.Context
6736	header_             http.Header
6737}
6738
6739// SetIamPolicy: Sets the access control policy on the specified
6740// resource. Replaces any
6741// existing policy.
6742func (r *ProjectsLocationsDatasetsDicomStoresService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsDatasetsDicomStoresSetIamPolicyCall {
6743	c := &ProjectsLocationsDatasetsDicomStoresSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
6744	c.resource = resource
6745	c.setiampolicyrequest = setiampolicyrequest
6746	return c
6747}
6748
6749// Fields allows partial responses to be retrieved. See
6750// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
6751// for more information.
6752func (c *ProjectsLocationsDatasetsDicomStoresSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresSetIamPolicyCall {
6753	c.urlParams_.Set("fields", googleapi.CombineFields(s))
6754	return c
6755}
6756
6757// Context sets the context to be used in this call's Do method. Any
6758// pending HTTP request will be aborted if the provided context is
6759// canceled.
6760func (c *ProjectsLocationsDatasetsDicomStoresSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresSetIamPolicyCall {
6761	c.ctx_ = ctx
6762	return c
6763}
6764
6765// Header returns an http.Header that can be modified by the caller to
6766// add HTTP headers to the request.
6767func (c *ProjectsLocationsDatasetsDicomStoresSetIamPolicyCall) Header() http.Header {
6768	if c.header_ == nil {
6769		c.header_ = make(http.Header)
6770	}
6771	return c.header_
6772}
6773
6774func (c *ProjectsLocationsDatasetsDicomStoresSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
6775	reqHeaders := make(http.Header)
6776	for k, v := range c.header_ {
6777		reqHeaders[k] = v
6778	}
6779	reqHeaders.Set("User-Agent", c.s.userAgent())
6780	var body io.Reader = nil
6781	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest)
6782	if err != nil {
6783		return nil, err
6784	}
6785	reqHeaders.Set("Content-Type", "application/json")
6786	c.urlParams_.Set("alt", alt)
6787	c.urlParams_.Set("prettyPrint", "false")
6788	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:setIamPolicy")
6789	urls += "?" + c.urlParams_.Encode()
6790	req, err := http.NewRequest("POST", urls, body)
6791	if err != nil {
6792		return nil, err
6793	}
6794	req.Header = reqHeaders
6795	googleapi.Expand(req.URL, map[string]string{
6796		"resource": c.resource,
6797	})
6798	return gensupport.SendRequest(c.ctx_, c.s.client, req)
6799}
6800
6801// Do executes the "healthcare.projects.locations.datasets.dicomStores.setIamPolicy" call.
6802// Exactly one of *Policy or error will be non-nil. Any non-2xx status
6803// code is an error. Response headers are in either
6804// *Policy.ServerResponse.Header or (if a response was returned at all)
6805// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
6806// check whether the returned error was because http.StatusNotModified
6807// was returned.
6808func (c *ProjectsLocationsDatasetsDicomStoresSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
6809	gensupport.SetOptions(c.urlParams_, opts...)
6810	res, err := c.doRequest("json")
6811	if res != nil && res.StatusCode == http.StatusNotModified {
6812		if res.Body != nil {
6813			res.Body.Close()
6814		}
6815		return nil, &googleapi.Error{
6816			Code:   res.StatusCode,
6817			Header: res.Header,
6818		}
6819	}
6820	if err != nil {
6821		return nil, err
6822	}
6823	defer googleapi.CloseBody(res)
6824	if err := googleapi.CheckResponse(res); err != nil {
6825		return nil, err
6826	}
6827	ret := &Policy{
6828		ServerResponse: googleapi.ServerResponse{
6829			Header:         res.Header,
6830			HTTPStatusCode: res.StatusCode,
6831		},
6832	}
6833	target := &ret
6834	if err := gensupport.DecodeResponse(target, res); err != nil {
6835		return nil, err
6836	}
6837	return ret, nil
6838	// {
6839	//   "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
6840	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}:setIamPolicy",
6841	//   "httpMethod": "POST",
6842	//   "id": "healthcare.projects.locations.datasets.dicomStores.setIamPolicy",
6843	//   "parameterOrder": [
6844	//     "resource"
6845	//   ],
6846	//   "parameters": {
6847	//     "resource": {
6848	//       "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
6849	//       "location": "path",
6850	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
6851	//       "required": true,
6852	//       "type": "string"
6853	//     }
6854	//   },
6855	//   "path": "v1beta1/{+resource}:setIamPolicy",
6856	//   "request": {
6857	//     "$ref": "SetIamPolicyRequest"
6858	//   },
6859	//   "response": {
6860	//     "$ref": "Policy"
6861	//   },
6862	//   "scopes": [
6863	//     "https://www.googleapis.com/auth/cloud-platform"
6864	//   ]
6865	// }
6866
6867}
6868
6869// method id "healthcare.projects.locations.datasets.dicomStores.storeInstances":
6870
6871type ProjectsLocationsDatasetsDicomStoresStoreInstancesCall struct {
6872	s            *Service
6873	parent       string
6874	dicomWebPath string
6875	body_        io.Reader
6876	urlParams_   gensupport.URLParams
6877	ctx_         context.Context
6878	header_      http.Header
6879}
6880
6881// StoreInstances: StoreInstances stores DICOM instances associated with
6882// study instance unique
6883// identifiers (SUID).
6884// See
6885// http://dicom.nema.org/medical/dicom/current/output/html/part18.htm
6886// l#sect_10.5.
6887func (r *ProjectsLocationsDatasetsDicomStoresService) StoreInstances(parent string, dicomWebPath string, body_ io.Reader) *ProjectsLocationsDatasetsDicomStoresStoreInstancesCall {
6888	c := &ProjectsLocationsDatasetsDicomStoresStoreInstancesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
6889	c.parent = parent
6890	c.dicomWebPath = dicomWebPath
6891	c.body_ = body_
6892	return c
6893}
6894
6895// Fields allows partial responses to be retrieved. See
6896// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
6897// for more information.
6898func (c *ProjectsLocationsDatasetsDicomStoresStoreInstancesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStoreInstancesCall {
6899	c.urlParams_.Set("fields", googleapi.CombineFields(s))
6900	return c
6901}
6902
6903// Context sets the context to be used in this call's Do method. Any
6904// pending HTTP request will be aborted if the provided context is
6905// canceled.
6906func (c *ProjectsLocationsDatasetsDicomStoresStoreInstancesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStoreInstancesCall {
6907	c.ctx_ = ctx
6908	return c
6909}
6910
6911// Header returns an http.Header that can be modified by the caller to
6912// add HTTP headers to the request.
6913func (c *ProjectsLocationsDatasetsDicomStoresStoreInstancesCall) Header() http.Header {
6914	if c.header_ == nil {
6915		c.header_ = make(http.Header)
6916	}
6917	return c.header_
6918}
6919
6920func (c *ProjectsLocationsDatasetsDicomStoresStoreInstancesCall) doRequest(alt string) (*http.Response, error) {
6921	reqHeaders := make(http.Header)
6922	for k, v := range c.header_ {
6923		reqHeaders[k] = v
6924	}
6925	reqHeaders.Set("User-Agent", c.s.userAgent())
6926	var body io.Reader = nil
6927	body = c.body_
6928	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}")
6929	urls += "?" + c.urlParams_.Encode()
6930	req, err := http.NewRequest("POST", urls, body)
6931	if err != nil {
6932		return nil, err
6933	}
6934	req.Header = reqHeaders
6935	googleapi.Expand(req.URL, map[string]string{
6936		"parent":       c.parent,
6937		"dicomWebPath": c.dicomWebPath,
6938	})
6939	return gensupport.SendRequest(c.ctx_, c.s.client, req)
6940}
6941
6942// Do executes the "healthcare.projects.locations.datasets.dicomStores.storeInstances" call.
6943func (c *ProjectsLocationsDatasetsDicomStoresStoreInstancesCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
6944	gensupport.SetOptions(c.urlParams_, opts...)
6945	return c.doRequest("")
6946	// {
6947	//   "description": "StoreInstances stores DICOM instances associated with study instance unique\nidentifiers (SUID). See\nhttp://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.5.",
6948	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/studies",
6949	//   "httpMethod": "POST",
6950	//   "id": "healthcare.projects.locations.datasets.dicomStores.storeInstances",
6951	//   "parameterOrder": [
6952	//     "parent",
6953	//     "dicomWebPath"
6954	//   ],
6955	//   "parameters": {
6956	//     "dicomWebPath": {
6957	//       "description": "The path of the StoreInstances DICOMweb request (e.g.,\n`studies/[{study_id}]`). Note that the `study_uid` is optional.",
6958	//       "location": "path",
6959	//       "pattern": "^studies$",
6960	//       "required": true,
6961	//       "type": "string"
6962	//     },
6963	//     "parent": {
6964	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
6965	//       "location": "path",
6966	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
6967	//       "required": true,
6968	//       "type": "string"
6969	//     }
6970	//   },
6971	//   "path": "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}",
6972	//   "request": {
6973	//     "$ref": "HttpBody"
6974	//   },
6975	//   "response": {
6976	//     "$ref": "HttpBody"
6977	//   },
6978	//   "scopes": [
6979	//     "https://www.googleapis.com/auth/cloud-platform"
6980	//   ]
6981	// }
6982
6983}
6984
6985// method id "healthcare.projects.locations.datasets.dicomStores.testIamPermissions":
6986
6987type ProjectsLocationsDatasetsDicomStoresTestIamPermissionsCall struct {
6988	s                         *Service
6989	resource                  string
6990	testiampermissionsrequest *TestIamPermissionsRequest
6991	urlParams_                gensupport.URLParams
6992	ctx_                      context.Context
6993	header_                   http.Header
6994}
6995
6996// TestIamPermissions: Returns permissions that a caller has on the
6997// specified resource.
6998// If the resource does not exist, this will return an empty set
6999// of
7000// permissions, not a NOT_FOUND error.
7001//
7002// Note: This operation is designed to be used for building
7003// permission-aware
7004// UIs and command-line tools, not for authorization checking. This
7005// operation
7006// may "fail open" without warning.
7007func (r *ProjectsLocationsDatasetsDicomStoresService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsDatasetsDicomStoresTestIamPermissionsCall {
7008	c := &ProjectsLocationsDatasetsDicomStoresTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
7009	c.resource = resource
7010	c.testiampermissionsrequest = testiampermissionsrequest
7011	return c
7012}
7013
7014// Fields allows partial responses to be retrieved. See
7015// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
7016// for more information.
7017func (c *ProjectsLocationsDatasetsDicomStoresTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresTestIamPermissionsCall {
7018	c.urlParams_.Set("fields", googleapi.CombineFields(s))
7019	return c
7020}
7021
7022// Context sets the context to be used in this call's Do method. Any
7023// pending HTTP request will be aborted if the provided context is
7024// canceled.
7025func (c *ProjectsLocationsDatasetsDicomStoresTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresTestIamPermissionsCall {
7026	c.ctx_ = ctx
7027	return c
7028}
7029
7030// Header returns an http.Header that can be modified by the caller to
7031// add HTTP headers to the request.
7032func (c *ProjectsLocationsDatasetsDicomStoresTestIamPermissionsCall) Header() http.Header {
7033	if c.header_ == nil {
7034		c.header_ = make(http.Header)
7035	}
7036	return c.header_
7037}
7038
7039func (c *ProjectsLocationsDatasetsDicomStoresTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
7040	reqHeaders := make(http.Header)
7041	for k, v := range c.header_ {
7042		reqHeaders[k] = v
7043	}
7044	reqHeaders.Set("User-Agent", c.s.userAgent())
7045	var body io.Reader = nil
7046	body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest)
7047	if err != nil {
7048		return nil, err
7049	}
7050	reqHeaders.Set("Content-Type", "application/json")
7051	c.urlParams_.Set("alt", alt)
7052	c.urlParams_.Set("prettyPrint", "false")
7053	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:testIamPermissions")
7054	urls += "?" + c.urlParams_.Encode()
7055	req, err := http.NewRequest("POST", urls, body)
7056	if err != nil {
7057		return nil, err
7058	}
7059	req.Header = reqHeaders
7060	googleapi.Expand(req.URL, map[string]string{
7061		"resource": c.resource,
7062	})
7063	return gensupport.SendRequest(c.ctx_, c.s.client, req)
7064}
7065
7066// Do executes the "healthcare.projects.locations.datasets.dicomStores.testIamPermissions" call.
7067// Exactly one of *TestIamPermissionsResponse or error will be non-nil.
7068// Any non-2xx status code is an error. Response headers are in either
7069// *TestIamPermissionsResponse.ServerResponse.Header or (if a response
7070// was returned at all) in error.(*googleapi.Error).Header. Use
7071// googleapi.IsNotModified to check whether the returned error was
7072// because http.StatusNotModified was returned.
7073func (c *ProjectsLocationsDatasetsDicomStoresTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) {
7074	gensupport.SetOptions(c.urlParams_, opts...)
7075	res, err := c.doRequest("json")
7076	if res != nil && res.StatusCode == http.StatusNotModified {
7077		if res.Body != nil {
7078			res.Body.Close()
7079		}
7080		return nil, &googleapi.Error{
7081			Code:   res.StatusCode,
7082			Header: res.Header,
7083		}
7084	}
7085	if err != nil {
7086		return nil, err
7087	}
7088	defer googleapi.CloseBody(res)
7089	if err := googleapi.CheckResponse(res); err != nil {
7090		return nil, err
7091	}
7092	ret := &TestIamPermissionsResponse{
7093		ServerResponse: googleapi.ServerResponse{
7094			Header:         res.Header,
7095			HTTPStatusCode: res.StatusCode,
7096		},
7097	}
7098	target := &ret
7099	if err := gensupport.DecodeResponse(target, res); err != nil {
7100		return nil, err
7101	}
7102	return ret, nil
7103	// {
7104	//   "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
7105	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}:testIamPermissions",
7106	//   "httpMethod": "POST",
7107	//   "id": "healthcare.projects.locations.datasets.dicomStores.testIamPermissions",
7108	//   "parameterOrder": [
7109	//     "resource"
7110	//   ],
7111	//   "parameters": {
7112	//     "resource": {
7113	//       "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
7114	//       "location": "path",
7115	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
7116	//       "required": true,
7117	//       "type": "string"
7118	//     }
7119	//   },
7120	//   "path": "v1beta1/{+resource}:testIamPermissions",
7121	//   "request": {
7122	//     "$ref": "TestIamPermissionsRequest"
7123	//   },
7124	//   "response": {
7125	//     "$ref": "TestIamPermissionsResponse"
7126	//   },
7127	//   "scopes": [
7128	//     "https://www.googleapis.com/auth/cloud-platform"
7129	//   ]
7130	// }
7131
7132}
7133
7134// method id "healthcare.projects.locations.datasets.dicomStores.studies.delete":
7135
7136type ProjectsLocationsDatasetsDicomStoresStudiesDeleteCall struct {
7137	s            *Service
7138	parent       string
7139	dicomWebPath string
7140	urlParams_   gensupport.URLParams
7141	ctx_         context.Context
7142	header_      http.Header
7143}
7144
7145// Delete: DeleteStudy deletes all instances within the given study.
7146// Delete requests
7147// are equivalent to the GET requests specified in the WADO-RS standard.
7148func (r *ProjectsLocationsDatasetsDicomStoresStudiesService) Delete(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesDeleteCall {
7149	c := &ProjectsLocationsDatasetsDicomStoresStudiesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
7150	c.parent = parent
7151	c.dicomWebPath = dicomWebPath
7152	return c
7153}
7154
7155// Fields allows partial responses to be retrieved. See
7156// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
7157// for more information.
7158func (c *ProjectsLocationsDatasetsDicomStoresStudiesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesDeleteCall {
7159	c.urlParams_.Set("fields", googleapi.CombineFields(s))
7160	return c
7161}
7162
7163// Context sets the context to be used in this call's Do method. Any
7164// pending HTTP request will be aborted if the provided context is
7165// canceled.
7166func (c *ProjectsLocationsDatasetsDicomStoresStudiesDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesDeleteCall {
7167	c.ctx_ = ctx
7168	return c
7169}
7170
7171// Header returns an http.Header that can be modified by the caller to
7172// add HTTP headers to the request.
7173func (c *ProjectsLocationsDatasetsDicomStoresStudiesDeleteCall) Header() http.Header {
7174	if c.header_ == nil {
7175		c.header_ = make(http.Header)
7176	}
7177	return c.header_
7178}
7179
7180func (c *ProjectsLocationsDatasetsDicomStoresStudiesDeleteCall) doRequest(alt string) (*http.Response, error) {
7181	reqHeaders := make(http.Header)
7182	for k, v := range c.header_ {
7183		reqHeaders[k] = v
7184	}
7185	reqHeaders.Set("User-Agent", c.s.userAgent())
7186	var body io.Reader = nil
7187	c.urlParams_.Set("alt", alt)
7188	c.urlParams_.Set("prettyPrint", "false")
7189	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}")
7190	urls += "?" + c.urlParams_.Encode()
7191	req, err := http.NewRequest("DELETE", urls, body)
7192	if err != nil {
7193		return nil, err
7194	}
7195	req.Header = reqHeaders
7196	googleapi.Expand(req.URL, map[string]string{
7197		"parent":       c.parent,
7198		"dicomWebPath": c.dicomWebPath,
7199	})
7200	return gensupport.SendRequest(c.ctx_, c.s.client, req)
7201}
7202
7203// Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.delete" call.
7204// Exactly one of *Empty or error will be non-nil. Any non-2xx status
7205// code is an error. Response headers are in either
7206// *Empty.ServerResponse.Header or (if a response was returned at all)
7207// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
7208// check whether the returned error was because http.StatusNotModified
7209// was returned.
7210func (c *ProjectsLocationsDatasetsDicomStoresStudiesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
7211	gensupport.SetOptions(c.urlParams_, opts...)
7212	res, err := c.doRequest("json")
7213	if res != nil && res.StatusCode == http.StatusNotModified {
7214		if res.Body != nil {
7215			res.Body.Close()
7216		}
7217		return nil, &googleapi.Error{
7218			Code:   res.StatusCode,
7219			Header: res.Header,
7220		}
7221	}
7222	if err != nil {
7223		return nil, err
7224	}
7225	defer googleapi.CloseBody(res)
7226	if err := googleapi.CheckResponse(res); err != nil {
7227		return nil, err
7228	}
7229	ret := &Empty{
7230		ServerResponse: googleapi.ServerResponse{
7231			Header:         res.Header,
7232			HTTPStatusCode: res.StatusCode,
7233		},
7234	}
7235	target := &ret
7236	if err := gensupport.DecodeResponse(target, res); err != nil {
7237		return nil, err
7238	}
7239	return ret, nil
7240	// {
7241	//   "description": "DeleteStudy deletes all instances within the given study. Delete requests\nare equivalent to the GET requests specified in the WADO-RS standard.",
7242	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/studies/{studiesId}",
7243	//   "httpMethod": "DELETE",
7244	//   "id": "healthcare.projects.locations.datasets.dicomStores.studies.delete",
7245	//   "parameterOrder": [
7246	//     "parent",
7247	//     "dicomWebPath"
7248	//   ],
7249	//   "parameters": {
7250	//     "dicomWebPath": {
7251	//       "description": "The path of the DeleteStudy request (e.g., `studies/{study_id}`).",
7252	//       "location": "path",
7253	//       "pattern": "^studies/[^/]+$",
7254	//       "required": true,
7255	//       "type": "string"
7256	//     },
7257	//     "parent": {
7258	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
7259	//       "location": "path",
7260	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
7261	//       "required": true,
7262	//       "type": "string"
7263	//     }
7264	//   },
7265	//   "path": "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}",
7266	//   "response": {
7267	//     "$ref": "Empty"
7268	//   },
7269	//   "scopes": [
7270	//     "https://www.googleapis.com/auth/cloud-platform"
7271	//   ]
7272	// }
7273
7274}
7275
7276// method id "healthcare.projects.locations.datasets.dicomStores.studies.retrieveMetadata":
7277
7278type ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall struct {
7279	s            *Service
7280	parent       string
7281	dicomWebPath string
7282	urlParams_   gensupport.URLParams
7283	ifNoneMatch_ string
7284	ctx_         context.Context
7285	header_      http.Header
7286}
7287
7288// RetrieveMetadata: RetrieveStudyMetadata returns instance associated
7289// with the given study
7290// presented as metadata with the bulk data removed.
7291// See
7292// http://dicom.nema.org/medical/dicom/current/output/html/part18.htm
7293// l#sect_10.4.
7294func (r *ProjectsLocationsDatasetsDicomStoresStudiesService) RetrieveMetadata(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall {
7295	c := &ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall{s: r.s, urlParams_: make(gensupport.URLParams)}
7296	c.parent = parent
7297	c.dicomWebPath = dicomWebPath
7298	return c
7299}
7300
7301// Fields allows partial responses to be retrieved. See
7302// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
7303// for more information.
7304func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall {
7305	c.urlParams_.Set("fields", googleapi.CombineFields(s))
7306	return c
7307}
7308
7309// IfNoneMatch sets the optional parameter which makes the operation
7310// fail if the object's ETag matches the given value. This is useful for
7311// getting updates only after the object has changed since the last
7312// request. Use googleapi.IsNotModified to check whether the response
7313// error from Do is the result of In-None-Match.
7314func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall {
7315	c.ifNoneMatch_ = entityTag
7316	return c
7317}
7318
7319// Context sets the context to be used in this call's Do method. Any
7320// pending HTTP request will be aborted if the provided context is
7321// canceled.
7322func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall {
7323	c.ctx_ = ctx
7324	return c
7325}
7326
7327// Header returns an http.Header that can be modified by the caller to
7328// add HTTP headers to the request.
7329func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall) Header() http.Header {
7330	if c.header_ == nil {
7331		c.header_ = make(http.Header)
7332	}
7333	return c.header_
7334}
7335
7336func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall) doRequest(alt string) (*http.Response, error) {
7337	reqHeaders := make(http.Header)
7338	for k, v := range c.header_ {
7339		reqHeaders[k] = v
7340	}
7341	reqHeaders.Set("User-Agent", c.s.userAgent())
7342	if c.ifNoneMatch_ != "" {
7343		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
7344	}
7345	var body io.Reader = nil
7346	c.urlParams_.Set("alt", alt)
7347	c.urlParams_.Set("prettyPrint", "false")
7348	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}")
7349	urls += "?" + c.urlParams_.Encode()
7350	req, err := http.NewRequest("GET", urls, body)
7351	if err != nil {
7352		return nil, err
7353	}
7354	req.Header = reqHeaders
7355	googleapi.Expand(req.URL, map[string]string{
7356		"parent":       c.parent,
7357		"dicomWebPath": c.dicomWebPath,
7358	})
7359	return gensupport.SendRequest(c.ctx_, c.s.client, req)
7360}
7361
7362// Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.retrieveMetadata" call.
7363func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveMetadataCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
7364	gensupport.SetOptions(c.urlParams_, opts...)
7365	return c.doRequest("")
7366	// {
7367	//   "description": "RetrieveStudyMetadata returns instance associated with the given study\npresented as metadata with the bulk data removed. See\nhttp://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.4.",
7368	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/studies/{studiesId}/metadata",
7369	//   "httpMethod": "GET",
7370	//   "id": "healthcare.projects.locations.datasets.dicomStores.studies.retrieveMetadata",
7371	//   "parameterOrder": [
7372	//     "parent",
7373	//     "dicomWebPath"
7374	//   ],
7375	//   "parameters": {
7376	//     "dicomWebPath": {
7377	//       "description": "The path of the RetrieveStudyMetadata DICOMweb request (e.g.,\n`studies/{study_id}/metadata`).",
7378	//       "location": "path",
7379	//       "pattern": "^studies/[^/]+/metadata$",
7380	//       "required": true,
7381	//       "type": "string"
7382	//     },
7383	//     "parent": {
7384	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
7385	//       "location": "path",
7386	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
7387	//       "required": true,
7388	//       "type": "string"
7389	//     }
7390	//   },
7391	//   "path": "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}",
7392	//   "response": {
7393	//     "$ref": "HttpBody"
7394	//   },
7395	//   "scopes": [
7396	//     "https://www.googleapis.com/auth/cloud-platform"
7397	//   ]
7398	// }
7399
7400}
7401
7402// method id "healthcare.projects.locations.datasets.dicomStores.studies.retrieveStudy":
7403
7404type ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall struct {
7405	s            *Service
7406	parent       string
7407	dicomWebPath string
7408	urlParams_   gensupport.URLParams
7409	ifNoneMatch_ string
7410	ctx_         context.Context
7411	header_      http.Header
7412}
7413
7414// RetrieveStudy: RetrieveStudy returns all instances within the given
7415// study.
7416// See
7417// http://dicom.nema.org/medical/dicom/current/output/html/part18.htm
7418// l#sect_10.4.
7419func (r *ProjectsLocationsDatasetsDicomStoresStudiesService) RetrieveStudy(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall {
7420	c := &ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
7421	c.parent = parent
7422	c.dicomWebPath = dicomWebPath
7423	return c
7424}
7425
7426// Fields allows partial responses to be retrieved. See
7427// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
7428// for more information.
7429func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall {
7430	c.urlParams_.Set("fields", googleapi.CombineFields(s))
7431	return c
7432}
7433
7434// IfNoneMatch sets the optional parameter which makes the operation
7435// fail if the object's ETag matches the given value. This is useful for
7436// getting updates only after the object has changed since the last
7437// request. Use googleapi.IsNotModified to check whether the response
7438// error from Do is the result of In-None-Match.
7439func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall {
7440	c.ifNoneMatch_ = entityTag
7441	return c
7442}
7443
7444// Context sets the context to be used in this call's Do method. Any
7445// pending HTTP request will be aborted if the provided context is
7446// canceled.
7447func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall {
7448	c.ctx_ = ctx
7449	return c
7450}
7451
7452// Header returns an http.Header that can be modified by the caller to
7453// add HTTP headers to the request.
7454func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall) Header() http.Header {
7455	if c.header_ == nil {
7456		c.header_ = make(http.Header)
7457	}
7458	return c.header_
7459}
7460
7461func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall) doRequest(alt string) (*http.Response, error) {
7462	reqHeaders := make(http.Header)
7463	for k, v := range c.header_ {
7464		reqHeaders[k] = v
7465	}
7466	reqHeaders.Set("User-Agent", c.s.userAgent())
7467	if c.ifNoneMatch_ != "" {
7468		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
7469	}
7470	var body io.Reader = nil
7471	c.urlParams_.Set("alt", alt)
7472	c.urlParams_.Set("prettyPrint", "false")
7473	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}")
7474	urls += "?" + c.urlParams_.Encode()
7475	req, err := http.NewRequest("GET", urls, body)
7476	if err != nil {
7477		return nil, err
7478	}
7479	req.Header = reqHeaders
7480	googleapi.Expand(req.URL, map[string]string{
7481		"parent":       c.parent,
7482		"dicomWebPath": c.dicomWebPath,
7483	})
7484	return gensupport.SendRequest(c.ctx_, c.s.client, req)
7485}
7486
7487// Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.retrieveStudy" call.
7488func (c *ProjectsLocationsDatasetsDicomStoresStudiesRetrieveStudyCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
7489	gensupport.SetOptions(c.urlParams_, opts...)
7490	return c.doRequest("")
7491	// {
7492	//   "description": "RetrieveStudy returns all instances within the given study. See\nhttp://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.4.",
7493	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/studies/{studiesId}",
7494	//   "httpMethod": "GET",
7495	//   "id": "healthcare.projects.locations.datasets.dicomStores.studies.retrieveStudy",
7496	//   "parameterOrder": [
7497	//     "parent",
7498	//     "dicomWebPath"
7499	//   ],
7500	//   "parameters": {
7501	//     "dicomWebPath": {
7502	//       "description": "The path of the RetrieveStudy DICOMweb request (e.g.,\n`studies/{study_id}`).",
7503	//       "location": "path",
7504	//       "pattern": "^studies/[^/]+$",
7505	//       "required": true,
7506	//       "type": "string"
7507	//     },
7508	//     "parent": {
7509	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
7510	//       "location": "path",
7511	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
7512	//       "required": true,
7513	//       "type": "string"
7514	//     }
7515	//   },
7516	//   "path": "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}",
7517	//   "response": {
7518	//     "$ref": "HttpBody"
7519	//   },
7520	//   "scopes": [
7521	//     "https://www.googleapis.com/auth/cloud-platform"
7522	//   ]
7523	// }
7524
7525}
7526
7527// method id "healthcare.projects.locations.datasets.dicomStores.studies.searchForInstances":
7528
7529type ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall struct {
7530	s            *Service
7531	parent       string
7532	dicomWebPath string
7533	urlParams_   gensupport.URLParams
7534	ifNoneMatch_ string
7535	ctx_         context.Context
7536	header_      http.Header
7537}
7538
7539// SearchForInstances: SearchForInstances returns a list of matching
7540// instances.
7541// See
7542// http://dicom.nema.org/medical/dicom/current/output/html/part18.htm
7543// l#sect_10.6.
7544func (r *ProjectsLocationsDatasetsDicomStoresStudiesService) SearchForInstances(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall {
7545	c := &ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
7546	c.parent = parent
7547	c.dicomWebPath = dicomWebPath
7548	return c
7549}
7550
7551// Fields allows partial responses to be retrieved. See
7552// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
7553// for more information.
7554func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall {
7555	c.urlParams_.Set("fields", googleapi.CombineFields(s))
7556	return c
7557}
7558
7559// IfNoneMatch sets the optional parameter which makes the operation
7560// fail if the object's ETag matches the given value. This is useful for
7561// getting updates only after the object has changed since the last
7562// request. Use googleapi.IsNotModified to check whether the response
7563// error from Do is the result of In-None-Match.
7564func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall {
7565	c.ifNoneMatch_ = entityTag
7566	return c
7567}
7568
7569// Context sets the context to be used in this call's Do method. Any
7570// pending HTTP request will be aborted if the provided context is
7571// canceled.
7572func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall {
7573	c.ctx_ = ctx
7574	return c
7575}
7576
7577// Header returns an http.Header that can be modified by the caller to
7578// add HTTP headers to the request.
7579func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall) Header() http.Header {
7580	if c.header_ == nil {
7581		c.header_ = make(http.Header)
7582	}
7583	return c.header_
7584}
7585
7586func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall) doRequest(alt string) (*http.Response, error) {
7587	reqHeaders := make(http.Header)
7588	for k, v := range c.header_ {
7589		reqHeaders[k] = v
7590	}
7591	reqHeaders.Set("User-Agent", c.s.userAgent())
7592	if c.ifNoneMatch_ != "" {
7593		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
7594	}
7595	var body io.Reader = nil
7596	c.urlParams_.Set("alt", alt)
7597	c.urlParams_.Set("prettyPrint", "false")
7598	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}")
7599	urls += "?" + c.urlParams_.Encode()
7600	req, err := http.NewRequest("GET", urls, body)
7601	if err != nil {
7602		return nil, err
7603	}
7604	req.Header = reqHeaders
7605	googleapi.Expand(req.URL, map[string]string{
7606		"parent":       c.parent,
7607		"dicomWebPath": c.dicomWebPath,
7608	})
7609	return gensupport.SendRequest(c.ctx_, c.s.client, req)
7610}
7611
7612// Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.searchForInstances" call.
7613func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForInstancesCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
7614	gensupport.SetOptions(c.urlParams_, opts...)
7615	return c.doRequest("")
7616	// {
7617	//   "description": "SearchForInstances returns a list of matching instances. See\nhttp://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.6.",
7618	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/studies/{studiesId}/instances",
7619	//   "httpMethod": "GET",
7620	//   "id": "healthcare.projects.locations.datasets.dicomStores.studies.searchForInstances",
7621	//   "parameterOrder": [
7622	//     "parent",
7623	//     "dicomWebPath"
7624	//   ],
7625	//   "parameters": {
7626	//     "dicomWebPath": {
7627	//       "description": "The path of the SearchForInstancesRequest DICOMweb request (e.g.,\n`instances` or `series/{series_uid}/instances` or\n`studies/{study_uid}/instances`).",
7628	//       "location": "path",
7629	//       "pattern": "^studies/[^/]+/instances$",
7630	//       "required": true,
7631	//       "type": "string"
7632	//     },
7633	//     "parent": {
7634	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
7635	//       "location": "path",
7636	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
7637	//       "required": true,
7638	//       "type": "string"
7639	//     }
7640	//   },
7641	//   "path": "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}",
7642	//   "response": {
7643	//     "$ref": "HttpBody"
7644	//   },
7645	//   "scopes": [
7646	//     "https://www.googleapis.com/auth/cloud-platform"
7647	//   ]
7648	// }
7649
7650}
7651
7652// method id "healthcare.projects.locations.datasets.dicomStores.studies.searchForSeries":
7653
7654type ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall struct {
7655	s            *Service
7656	parent       string
7657	dicomWebPath string
7658	urlParams_   gensupport.URLParams
7659	ifNoneMatch_ string
7660	ctx_         context.Context
7661	header_      http.Header
7662}
7663
7664// SearchForSeries: SearchForSeries returns a list of matching series.
7665// See
7666// http://dicom.nema.org/medical/dicom/current/output/html/part18.htm
7667// l#sect_10.6.
7668func (r *ProjectsLocationsDatasetsDicomStoresStudiesService) SearchForSeries(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall {
7669	c := &ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
7670	c.parent = parent
7671	c.dicomWebPath = dicomWebPath
7672	return c
7673}
7674
7675// Fields allows partial responses to be retrieved. See
7676// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
7677// for more information.
7678func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall {
7679	c.urlParams_.Set("fields", googleapi.CombineFields(s))
7680	return c
7681}
7682
7683// IfNoneMatch sets the optional parameter which makes the operation
7684// fail if the object's ETag matches the given value. This is useful for
7685// getting updates only after the object has changed since the last
7686// request. Use googleapi.IsNotModified to check whether the response
7687// error from Do is the result of In-None-Match.
7688func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall {
7689	c.ifNoneMatch_ = entityTag
7690	return c
7691}
7692
7693// Context sets the context to be used in this call's Do method. Any
7694// pending HTTP request will be aborted if the provided context is
7695// canceled.
7696func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall {
7697	c.ctx_ = ctx
7698	return c
7699}
7700
7701// Header returns an http.Header that can be modified by the caller to
7702// add HTTP headers to the request.
7703func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall) Header() http.Header {
7704	if c.header_ == nil {
7705		c.header_ = make(http.Header)
7706	}
7707	return c.header_
7708}
7709
7710func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall) doRequest(alt string) (*http.Response, error) {
7711	reqHeaders := make(http.Header)
7712	for k, v := range c.header_ {
7713		reqHeaders[k] = v
7714	}
7715	reqHeaders.Set("User-Agent", c.s.userAgent())
7716	if c.ifNoneMatch_ != "" {
7717		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
7718	}
7719	var body io.Reader = nil
7720	c.urlParams_.Set("alt", alt)
7721	c.urlParams_.Set("prettyPrint", "false")
7722	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}")
7723	urls += "?" + c.urlParams_.Encode()
7724	req, err := http.NewRequest("GET", urls, body)
7725	if err != nil {
7726		return nil, err
7727	}
7728	req.Header = reqHeaders
7729	googleapi.Expand(req.URL, map[string]string{
7730		"parent":       c.parent,
7731		"dicomWebPath": c.dicomWebPath,
7732	})
7733	return gensupport.SendRequest(c.ctx_, c.s.client, req)
7734}
7735
7736// Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.searchForSeries" call.
7737func (c *ProjectsLocationsDatasetsDicomStoresStudiesSearchForSeriesCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
7738	gensupport.SetOptions(c.urlParams_, opts...)
7739	return c.doRequest("")
7740	// {
7741	//   "description": "SearchForSeries returns a list of matching series. See\nhttp://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.6.",
7742	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/studies/{studiesId}/series",
7743	//   "httpMethod": "GET",
7744	//   "id": "healthcare.projects.locations.datasets.dicomStores.studies.searchForSeries",
7745	//   "parameterOrder": [
7746	//     "parent",
7747	//     "dicomWebPath"
7748	//   ],
7749	//   "parameters": {
7750	//     "dicomWebPath": {
7751	//       "description": "The path of the SearchForSeries DICOMweb request(e.g., `series` or\n`studies/{study_uid}/series`).",
7752	//       "location": "path",
7753	//       "pattern": "^studies/[^/]+/series$",
7754	//       "required": true,
7755	//       "type": "string"
7756	//     },
7757	//     "parent": {
7758	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
7759	//       "location": "path",
7760	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
7761	//       "required": true,
7762	//       "type": "string"
7763	//     }
7764	//   },
7765	//   "path": "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}",
7766	//   "response": {
7767	//     "$ref": "HttpBody"
7768	//   },
7769	//   "scopes": [
7770	//     "https://www.googleapis.com/auth/cloud-platform"
7771	//   ]
7772	// }
7773
7774}
7775
7776// method id "healthcare.projects.locations.datasets.dicomStores.studies.storeInstances":
7777
7778type ProjectsLocationsDatasetsDicomStoresStudiesStoreInstancesCall struct {
7779	s            *Service
7780	parent       string
7781	dicomWebPath string
7782	body_        io.Reader
7783	urlParams_   gensupport.URLParams
7784	ctx_         context.Context
7785	header_      http.Header
7786}
7787
7788// StoreInstances: StoreInstances stores DICOM instances associated with
7789// study instance unique
7790// identifiers (SUID).
7791// See
7792// http://dicom.nema.org/medical/dicom/current/output/html/part18.htm
7793// l#sect_10.5.
7794func (r *ProjectsLocationsDatasetsDicomStoresStudiesService) StoreInstances(parent string, dicomWebPath string, body_ io.Reader) *ProjectsLocationsDatasetsDicomStoresStudiesStoreInstancesCall {
7795	c := &ProjectsLocationsDatasetsDicomStoresStudiesStoreInstancesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
7796	c.parent = parent
7797	c.dicomWebPath = dicomWebPath
7798	c.body_ = body_
7799	return c
7800}
7801
7802// Fields allows partial responses to be retrieved. See
7803// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
7804// for more information.
7805func (c *ProjectsLocationsDatasetsDicomStoresStudiesStoreInstancesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesStoreInstancesCall {
7806	c.urlParams_.Set("fields", googleapi.CombineFields(s))
7807	return c
7808}
7809
7810// Context sets the context to be used in this call's Do method. Any
7811// pending HTTP request will be aborted if the provided context is
7812// canceled.
7813func (c *ProjectsLocationsDatasetsDicomStoresStudiesStoreInstancesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesStoreInstancesCall {
7814	c.ctx_ = ctx
7815	return c
7816}
7817
7818// Header returns an http.Header that can be modified by the caller to
7819// add HTTP headers to the request.
7820func (c *ProjectsLocationsDatasetsDicomStoresStudiesStoreInstancesCall) Header() http.Header {
7821	if c.header_ == nil {
7822		c.header_ = make(http.Header)
7823	}
7824	return c.header_
7825}
7826
7827func (c *ProjectsLocationsDatasetsDicomStoresStudiesStoreInstancesCall) doRequest(alt string) (*http.Response, error) {
7828	reqHeaders := make(http.Header)
7829	for k, v := range c.header_ {
7830		reqHeaders[k] = v
7831	}
7832	reqHeaders.Set("User-Agent", c.s.userAgent())
7833	var body io.Reader = nil
7834	body = c.body_
7835	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}")
7836	urls += "?" + c.urlParams_.Encode()
7837	req, err := http.NewRequest("POST", urls, body)
7838	if err != nil {
7839		return nil, err
7840	}
7841	req.Header = reqHeaders
7842	googleapi.Expand(req.URL, map[string]string{
7843		"parent":       c.parent,
7844		"dicomWebPath": c.dicomWebPath,
7845	})
7846	return gensupport.SendRequest(c.ctx_, c.s.client, req)
7847}
7848
7849// Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.storeInstances" call.
7850func (c *ProjectsLocationsDatasetsDicomStoresStudiesStoreInstancesCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
7851	gensupport.SetOptions(c.urlParams_, opts...)
7852	return c.doRequest("")
7853	// {
7854	//   "description": "StoreInstances stores DICOM instances associated with study instance unique\nidentifiers (SUID). See\nhttp://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.5.",
7855	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/studies/{studiesId}",
7856	//   "httpMethod": "POST",
7857	//   "id": "healthcare.projects.locations.datasets.dicomStores.studies.storeInstances",
7858	//   "parameterOrder": [
7859	//     "parent",
7860	//     "dicomWebPath"
7861	//   ],
7862	//   "parameters": {
7863	//     "dicomWebPath": {
7864	//       "description": "The path of the StoreInstances DICOMweb request (e.g.,\n`studies/[{study_id}]`). Note that the `study_uid` is optional.",
7865	//       "location": "path",
7866	//       "pattern": "^studies/[^/]+$",
7867	//       "required": true,
7868	//       "type": "string"
7869	//     },
7870	//     "parent": {
7871	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
7872	//       "location": "path",
7873	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
7874	//       "required": true,
7875	//       "type": "string"
7876	//     }
7877	//   },
7878	//   "path": "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}",
7879	//   "request": {
7880	//     "$ref": "HttpBody"
7881	//   },
7882	//   "response": {
7883	//     "$ref": "HttpBody"
7884	//   },
7885	//   "scopes": [
7886	//     "https://www.googleapis.com/auth/cloud-platform"
7887	//   ]
7888	// }
7889
7890}
7891
7892// method id "healthcare.projects.locations.datasets.dicomStores.studies.series.delete":
7893
7894type ProjectsLocationsDatasetsDicomStoresStudiesSeriesDeleteCall struct {
7895	s            *Service
7896	parent       string
7897	dicomWebPath string
7898	urlParams_   gensupport.URLParams
7899	ctx_         context.Context
7900	header_      http.Header
7901}
7902
7903// Delete: DeleteSeries deletes all instances within the given study and
7904// series.
7905// Delete requests are equivalent to the GET requests specified in the
7906// WADO-RS
7907// standard.
7908func (r *ProjectsLocationsDatasetsDicomStoresStudiesSeriesService) Delete(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesDeleteCall {
7909	c := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
7910	c.parent = parent
7911	c.dicomWebPath = dicomWebPath
7912	return c
7913}
7914
7915// Fields allows partial responses to be retrieved. See
7916// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
7917// for more information.
7918func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesDeleteCall {
7919	c.urlParams_.Set("fields", googleapi.CombineFields(s))
7920	return c
7921}
7922
7923// Context sets the context to be used in this call's Do method. Any
7924// pending HTTP request will be aborted if the provided context is
7925// canceled.
7926func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesDeleteCall {
7927	c.ctx_ = ctx
7928	return c
7929}
7930
7931// Header returns an http.Header that can be modified by the caller to
7932// add HTTP headers to the request.
7933func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesDeleteCall) Header() http.Header {
7934	if c.header_ == nil {
7935		c.header_ = make(http.Header)
7936	}
7937	return c.header_
7938}
7939
7940func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesDeleteCall) doRequest(alt string) (*http.Response, error) {
7941	reqHeaders := make(http.Header)
7942	for k, v := range c.header_ {
7943		reqHeaders[k] = v
7944	}
7945	reqHeaders.Set("User-Agent", c.s.userAgent())
7946	var body io.Reader = nil
7947	c.urlParams_.Set("alt", alt)
7948	c.urlParams_.Set("prettyPrint", "false")
7949	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}")
7950	urls += "?" + c.urlParams_.Encode()
7951	req, err := http.NewRequest("DELETE", urls, body)
7952	if err != nil {
7953		return nil, err
7954	}
7955	req.Header = reqHeaders
7956	googleapi.Expand(req.URL, map[string]string{
7957		"parent":       c.parent,
7958		"dicomWebPath": c.dicomWebPath,
7959	})
7960	return gensupport.SendRequest(c.ctx_, c.s.client, req)
7961}
7962
7963// Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.series.delete" call.
7964// Exactly one of *Empty or error will be non-nil. Any non-2xx status
7965// code is an error. Response headers are in either
7966// *Empty.ServerResponse.Header or (if a response was returned at all)
7967// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
7968// check whether the returned error was because http.StatusNotModified
7969// was returned.
7970func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
7971	gensupport.SetOptions(c.urlParams_, opts...)
7972	res, err := c.doRequest("json")
7973	if res != nil && res.StatusCode == http.StatusNotModified {
7974		if res.Body != nil {
7975			res.Body.Close()
7976		}
7977		return nil, &googleapi.Error{
7978			Code:   res.StatusCode,
7979			Header: res.Header,
7980		}
7981	}
7982	if err != nil {
7983		return nil, err
7984	}
7985	defer googleapi.CloseBody(res)
7986	if err := googleapi.CheckResponse(res); err != nil {
7987		return nil, err
7988	}
7989	ret := &Empty{
7990		ServerResponse: googleapi.ServerResponse{
7991			Header:         res.Header,
7992			HTTPStatusCode: res.StatusCode,
7993		},
7994	}
7995	target := &ret
7996	if err := gensupport.DecodeResponse(target, res); err != nil {
7997		return nil, err
7998	}
7999	return ret, nil
8000	// {
8001	//   "description": "DeleteSeries deletes all instances within the given study and series.\nDelete requests are equivalent to the GET requests specified in the WADO-RS\nstandard.",
8002	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/studies/{studiesId}/series/{seriesId}",
8003	//   "httpMethod": "DELETE",
8004	//   "id": "healthcare.projects.locations.datasets.dicomStores.studies.series.delete",
8005	//   "parameterOrder": [
8006	//     "parent",
8007	//     "dicomWebPath"
8008	//   ],
8009	//   "parameters": {
8010	//     "dicomWebPath": {
8011	//       "description": "The path of the DeleteSeries request (e.g.,\n`studies/{study_id}/series/{series_id}`).",
8012	//       "location": "path",
8013	//       "pattern": "^studies/[^/]+/series/[^/]+$",
8014	//       "required": true,
8015	//       "type": "string"
8016	//     },
8017	//     "parent": {
8018	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
8019	//       "location": "path",
8020	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
8021	//       "required": true,
8022	//       "type": "string"
8023	//     }
8024	//   },
8025	//   "path": "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}",
8026	//   "response": {
8027	//     "$ref": "Empty"
8028	//   },
8029	//   "scopes": [
8030	//     "https://www.googleapis.com/auth/cloud-platform"
8031	//   ]
8032	// }
8033
8034}
8035
8036// method id "healthcare.projects.locations.datasets.dicomStores.studies.series.retrieveMetadata":
8037
8038type ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall struct {
8039	s            *Service
8040	parent       string
8041	dicomWebPath string
8042	urlParams_   gensupport.URLParams
8043	ifNoneMatch_ string
8044	ctx_         context.Context
8045	header_      http.Header
8046}
8047
8048// RetrieveMetadata: RetrieveSeriesMetadata returns instance associated
8049// with the given study and
8050// series, presented as metadata with the bulk data removed.
8051// See
8052// http://dicom.nema.org/medical/dicom/current/output/html/part18.htm
8053// l#sect_10.4.
8054func (r *ProjectsLocationsDatasetsDicomStoresStudiesSeriesService) RetrieveMetadata(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall {
8055	c := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall{s: r.s, urlParams_: make(gensupport.URLParams)}
8056	c.parent = parent
8057	c.dicomWebPath = dicomWebPath
8058	return c
8059}
8060
8061// Fields allows partial responses to be retrieved. See
8062// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
8063// for more information.
8064func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall {
8065	c.urlParams_.Set("fields", googleapi.CombineFields(s))
8066	return c
8067}
8068
8069// IfNoneMatch sets the optional parameter which makes the operation
8070// fail if the object's ETag matches the given value. This is useful for
8071// getting updates only after the object has changed since the last
8072// request. Use googleapi.IsNotModified to check whether the response
8073// error from Do is the result of In-None-Match.
8074func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall {
8075	c.ifNoneMatch_ = entityTag
8076	return c
8077}
8078
8079// Context sets the context to be used in this call's Do method. Any
8080// pending HTTP request will be aborted if the provided context is
8081// canceled.
8082func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall {
8083	c.ctx_ = ctx
8084	return c
8085}
8086
8087// Header returns an http.Header that can be modified by the caller to
8088// add HTTP headers to the request.
8089func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall) Header() http.Header {
8090	if c.header_ == nil {
8091		c.header_ = make(http.Header)
8092	}
8093	return c.header_
8094}
8095
8096func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall) doRequest(alt string) (*http.Response, error) {
8097	reqHeaders := make(http.Header)
8098	for k, v := range c.header_ {
8099		reqHeaders[k] = v
8100	}
8101	reqHeaders.Set("User-Agent", c.s.userAgent())
8102	if c.ifNoneMatch_ != "" {
8103		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
8104	}
8105	var body io.Reader = nil
8106	c.urlParams_.Set("alt", alt)
8107	c.urlParams_.Set("prettyPrint", "false")
8108	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}")
8109	urls += "?" + c.urlParams_.Encode()
8110	req, err := http.NewRequest("GET", urls, body)
8111	if err != nil {
8112		return nil, err
8113	}
8114	req.Header = reqHeaders
8115	googleapi.Expand(req.URL, map[string]string{
8116		"parent":       c.parent,
8117		"dicomWebPath": c.dicomWebPath,
8118	})
8119	return gensupport.SendRequest(c.ctx_, c.s.client, req)
8120}
8121
8122// Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.series.retrieveMetadata" call.
8123func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveMetadataCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
8124	gensupport.SetOptions(c.urlParams_, opts...)
8125	return c.doRequest("")
8126	// {
8127	//   "description": "RetrieveSeriesMetadata returns instance associated with the given study and\nseries, presented as metadata with the bulk data removed. See\nhttp://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.4.",
8128	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/studies/{studiesId}/series/{seriesId}/metadata",
8129	//   "httpMethod": "GET",
8130	//   "id": "healthcare.projects.locations.datasets.dicomStores.studies.series.retrieveMetadata",
8131	//   "parameterOrder": [
8132	//     "parent",
8133	//     "dicomWebPath"
8134	//   ],
8135	//   "parameters": {
8136	//     "dicomWebPath": {
8137	//       "description": "The path of the RetrieveSeriesMetadata DICOMweb request (e.g.,\n`studies/{study_id}/series/{series_id}/metadata`).",
8138	//       "location": "path",
8139	//       "pattern": "^studies/[^/]+/series/[^/]+/metadata$",
8140	//       "required": true,
8141	//       "type": "string"
8142	//     },
8143	//     "parent": {
8144	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
8145	//       "location": "path",
8146	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
8147	//       "required": true,
8148	//       "type": "string"
8149	//     }
8150	//   },
8151	//   "path": "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}",
8152	//   "response": {
8153	//     "$ref": "HttpBody"
8154	//   },
8155	//   "scopes": [
8156	//     "https://www.googleapis.com/auth/cloud-platform"
8157	//   ]
8158	// }
8159
8160}
8161
8162// method id "healthcare.projects.locations.datasets.dicomStores.studies.series.retrieveSeries":
8163
8164type ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall struct {
8165	s            *Service
8166	parent       string
8167	dicomWebPath string
8168	urlParams_   gensupport.URLParams
8169	ifNoneMatch_ string
8170	ctx_         context.Context
8171	header_      http.Header
8172}
8173
8174// RetrieveSeries: RetrieveSeries returns all instances within the given
8175// study and series.
8176// See
8177// http://dicom.nema.org/medical/dicom/current/output/html/part18.htm
8178// l#sect_10.4.
8179func (r *ProjectsLocationsDatasetsDicomStoresStudiesSeriesService) RetrieveSeries(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall {
8180	c := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
8181	c.parent = parent
8182	c.dicomWebPath = dicomWebPath
8183	return c
8184}
8185
8186// Fields allows partial responses to be retrieved. See
8187// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
8188// for more information.
8189func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall {
8190	c.urlParams_.Set("fields", googleapi.CombineFields(s))
8191	return c
8192}
8193
8194// IfNoneMatch sets the optional parameter which makes the operation
8195// fail if the object's ETag matches the given value. This is useful for
8196// getting updates only after the object has changed since the last
8197// request. Use googleapi.IsNotModified to check whether the response
8198// error from Do is the result of In-None-Match.
8199func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall {
8200	c.ifNoneMatch_ = entityTag
8201	return c
8202}
8203
8204// Context sets the context to be used in this call's Do method. Any
8205// pending HTTP request will be aborted if the provided context is
8206// canceled.
8207func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall {
8208	c.ctx_ = ctx
8209	return c
8210}
8211
8212// Header returns an http.Header that can be modified by the caller to
8213// add HTTP headers to the request.
8214func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall) Header() http.Header {
8215	if c.header_ == nil {
8216		c.header_ = make(http.Header)
8217	}
8218	return c.header_
8219}
8220
8221func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall) doRequest(alt string) (*http.Response, error) {
8222	reqHeaders := make(http.Header)
8223	for k, v := range c.header_ {
8224		reqHeaders[k] = v
8225	}
8226	reqHeaders.Set("User-Agent", c.s.userAgent())
8227	if c.ifNoneMatch_ != "" {
8228		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
8229	}
8230	var body io.Reader = nil
8231	c.urlParams_.Set("alt", alt)
8232	c.urlParams_.Set("prettyPrint", "false")
8233	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}")
8234	urls += "?" + c.urlParams_.Encode()
8235	req, err := http.NewRequest("GET", urls, body)
8236	if err != nil {
8237		return nil, err
8238	}
8239	req.Header = reqHeaders
8240	googleapi.Expand(req.URL, map[string]string{
8241		"parent":       c.parent,
8242		"dicomWebPath": c.dicomWebPath,
8243	})
8244	return gensupport.SendRequest(c.ctx_, c.s.client, req)
8245}
8246
8247// Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.series.retrieveSeries" call.
8248func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesRetrieveSeriesCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
8249	gensupport.SetOptions(c.urlParams_, opts...)
8250	return c.doRequest("")
8251	// {
8252	//   "description": "RetrieveSeries returns all instances within the given study and series. See\nhttp://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.4.",
8253	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/studies/{studiesId}/series/{seriesId}",
8254	//   "httpMethod": "GET",
8255	//   "id": "healthcare.projects.locations.datasets.dicomStores.studies.series.retrieveSeries",
8256	//   "parameterOrder": [
8257	//     "parent",
8258	//     "dicomWebPath"
8259	//   ],
8260	//   "parameters": {
8261	//     "dicomWebPath": {
8262	//       "description": "The path of the RetrieveSeries DICOMweb request (e.g.,\n`studies/{study_id}/series/{series_id}`).",
8263	//       "location": "path",
8264	//       "pattern": "^studies/[^/]+/series/[^/]+$",
8265	//       "required": true,
8266	//       "type": "string"
8267	//     },
8268	//     "parent": {
8269	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
8270	//       "location": "path",
8271	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
8272	//       "required": true,
8273	//       "type": "string"
8274	//     }
8275	//   },
8276	//   "path": "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}",
8277	//   "response": {
8278	//     "$ref": "HttpBody"
8279	//   },
8280	//   "scopes": [
8281	//     "https://www.googleapis.com/auth/cloud-platform"
8282	//   ]
8283	// }
8284
8285}
8286
8287// method id "healthcare.projects.locations.datasets.dicomStores.studies.series.searchForInstances":
8288
8289type ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall struct {
8290	s            *Service
8291	parent       string
8292	dicomWebPath string
8293	urlParams_   gensupport.URLParams
8294	ifNoneMatch_ string
8295	ctx_         context.Context
8296	header_      http.Header
8297}
8298
8299// SearchForInstances: SearchForInstances returns a list of matching
8300// instances.
8301// See
8302// http://dicom.nema.org/medical/dicom/current/output/html/part18.htm
8303// l#sect_10.6.
8304func (r *ProjectsLocationsDatasetsDicomStoresStudiesSeriesService) SearchForInstances(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall {
8305	c := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
8306	c.parent = parent
8307	c.dicomWebPath = dicomWebPath
8308	return c
8309}
8310
8311// Fields allows partial responses to be retrieved. See
8312// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
8313// for more information.
8314func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall {
8315	c.urlParams_.Set("fields", googleapi.CombineFields(s))
8316	return c
8317}
8318
8319// IfNoneMatch sets the optional parameter which makes the operation
8320// fail if the object's ETag matches the given value. This is useful for
8321// getting updates only after the object has changed since the last
8322// request. Use googleapi.IsNotModified to check whether the response
8323// error from Do is the result of In-None-Match.
8324func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall {
8325	c.ifNoneMatch_ = entityTag
8326	return c
8327}
8328
8329// Context sets the context to be used in this call's Do method. Any
8330// pending HTTP request will be aborted if the provided context is
8331// canceled.
8332func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall {
8333	c.ctx_ = ctx
8334	return c
8335}
8336
8337// Header returns an http.Header that can be modified by the caller to
8338// add HTTP headers to the request.
8339func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall) Header() http.Header {
8340	if c.header_ == nil {
8341		c.header_ = make(http.Header)
8342	}
8343	return c.header_
8344}
8345
8346func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall) doRequest(alt string) (*http.Response, error) {
8347	reqHeaders := make(http.Header)
8348	for k, v := range c.header_ {
8349		reqHeaders[k] = v
8350	}
8351	reqHeaders.Set("User-Agent", c.s.userAgent())
8352	if c.ifNoneMatch_ != "" {
8353		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
8354	}
8355	var body io.Reader = nil
8356	c.urlParams_.Set("alt", alt)
8357	c.urlParams_.Set("prettyPrint", "false")
8358	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}")
8359	urls += "?" + c.urlParams_.Encode()
8360	req, err := http.NewRequest("GET", urls, body)
8361	if err != nil {
8362		return nil, err
8363	}
8364	req.Header = reqHeaders
8365	googleapi.Expand(req.URL, map[string]string{
8366		"parent":       c.parent,
8367		"dicomWebPath": c.dicomWebPath,
8368	})
8369	return gensupport.SendRequest(c.ctx_, c.s.client, req)
8370}
8371
8372// Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.series.searchForInstances" call.
8373func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesSearchForInstancesCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
8374	gensupport.SetOptions(c.urlParams_, opts...)
8375	return c.doRequest("")
8376	// {
8377	//   "description": "SearchForInstances returns a list of matching instances. See\nhttp://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.6.",
8378	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/studies/{studiesId}/series/{seriesId}/instances",
8379	//   "httpMethod": "GET",
8380	//   "id": "healthcare.projects.locations.datasets.dicomStores.studies.series.searchForInstances",
8381	//   "parameterOrder": [
8382	//     "parent",
8383	//     "dicomWebPath"
8384	//   ],
8385	//   "parameters": {
8386	//     "dicomWebPath": {
8387	//       "description": "The path of the SearchForInstancesRequest DICOMweb request (e.g.,\n`instances` or `series/{series_uid}/instances` or\n`studies/{study_uid}/instances`).",
8388	//       "location": "path",
8389	//       "pattern": "^studies/[^/]+/series/[^/]+/instances$",
8390	//       "required": true,
8391	//       "type": "string"
8392	//     },
8393	//     "parent": {
8394	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
8395	//       "location": "path",
8396	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
8397	//       "required": true,
8398	//       "type": "string"
8399	//     }
8400	//   },
8401	//   "path": "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}",
8402	//   "response": {
8403	//     "$ref": "HttpBody"
8404	//   },
8405	//   "scopes": [
8406	//     "https://www.googleapis.com/auth/cloud-platform"
8407	//   ]
8408	// }
8409
8410}
8411
8412// method id "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.delete":
8413
8414type ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesDeleteCall struct {
8415	s            *Service
8416	parent       string
8417	dicomWebPath string
8418	urlParams_   gensupport.URLParams
8419	ctx_         context.Context
8420	header_      http.Header
8421}
8422
8423// Delete: DeleteInstance deletes an instance associated with the given
8424// study, series,
8425// and SOP Instance UID. Delete requests are equivalent to the GET
8426// requests
8427// specified in the WADO-RS standard.
8428func (r *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesService) Delete(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesDeleteCall {
8429	c := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
8430	c.parent = parent
8431	c.dicomWebPath = dicomWebPath
8432	return c
8433}
8434
8435// Fields allows partial responses to be retrieved. See
8436// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
8437// for more information.
8438func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesDeleteCall {
8439	c.urlParams_.Set("fields", googleapi.CombineFields(s))
8440	return c
8441}
8442
8443// Context sets the context to be used in this call's Do method. Any
8444// pending HTTP request will be aborted if the provided context is
8445// canceled.
8446func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesDeleteCall {
8447	c.ctx_ = ctx
8448	return c
8449}
8450
8451// Header returns an http.Header that can be modified by the caller to
8452// add HTTP headers to the request.
8453func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesDeleteCall) Header() http.Header {
8454	if c.header_ == nil {
8455		c.header_ = make(http.Header)
8456	}
8457	return c.header_
8458}
8459
8460func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesDeleteCall) doRequest(alt string) (*http.Response, error) {
8461	reqHeaders := make(http.Header)
8462	for k, v := range c.header_ {
8463		reqHeaders[k] = v
8464	}
8465	reqHeaders.Set("User-Agent", c.s.userAgent())
8466	var body io.Reader = nil
8467	c.urlParams_.Set("alt", alt)
8468	c.urlParams_.Set("prettyPrint", "false")
8469	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}")
8470	urls += "?" + c.urlParams_.Encode()
8471	req, err := http.NewRequest("DELETE", urls, body)
8472	if err != nil {
8473		return nil, err
8474	}
8475	req.Header = reqHeaders
8476	googleapi.Expand(req.URL, map[string]string{
8477		"parent":       c.parent,
8478		"dicomWebPath": c.dicomWebPath,
8479	})
8480	return gensupport.SendRequest(c.ctx_, c.s.client, req)
8481}
8482
8483// Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.delete" call.
8484// Exactly one of *Empty or error will be non-nil. Any non-2xx status
8485// code is an error. Response headers are in either
8486// *Empty.ServerResponse.Header or (if a response was returned at all)
8487// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
8488// check whether the returned error was because http.StatusNotModified
8489// was returned.
8490func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
8491	gensupport.SetOptions(c.urlParams_, opts...)
8492	res, err := c.doRequest("json")
8493	if res != nil && res.StatusCode == http.StatusNotModified {
8494		if res.Body != nil {
8495			res.Body.Close()
8496		}
8497		return nil, &googleapi.Error{
8498			Code:   res.StatusCode,
8499			Header: res.Header,
8500		}
8501	}
8502	if err != nil {
8503		return nil, err
8504	}
8505	defer googleapi.CloseBody(res)
8506	if err := googleapi.CheckResponse(res); err != nil {
8507		return nil, err
8508	}
8509	ret := &Empty{
8510		ServerResponse: googleapi.ServerResponse{
8511			Header:         res.Header,
8512			HTTPStatusCode: res.StatusCode,
8513		},
8514	}
8515	target := &ret
8516	if err := gensupport.DecodeResponse(target, res); err != nil {
8517		return nil, err
8518	}
8519	return ret, nil
8520	// {
8521	//   "description": "DeleteInstance deletes an instance associated with the given study, series,\nand SOP Instance UID. Delete requests are equivalent to the GET requests\nspecified in the WADO-RS standard.",
8522	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/studies/{studiesId}/series/{seriesId}/instances/{instancesId}",
8523	//   "httpMethod": "DELETE",
8524	//   "id": "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.delete",
8525	//   "parameterOrder": [
8526	//     "parent",
8527	//     "dicomWebPath"
8528	//   ],
8529	//   "parameters": {
8530	//     "dicomWebPath": {
8531	//       "description": "The path of the DeleteInstance request (e.g.,\n`studies/{study_id}/series/{series_id}/instances/{instance_id}`).",
8532	//       "location": "path",
8533	//       "pattern": "^studies/[^/]+/series/[^/]+/instances/[^/]+$",
8534	//       "required": true,
8535	//       "type": "string"
8536	//     },
8537	//     "parent": {
8538	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
8539	//       "location": "path",
8540	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
8541	//       "required": true,
8542	//       "type": "string"
8543	//     }
8544	//   },
8545	//   "path": "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}",
8546	//   "response": {
8547	//     "$ref": "Empty"
8548	//   },
8549	//   "scopes": [
8550	//     "https://www.googleapis.com/auth/cloud-platform"
8551	//   ]
8552	// }
8553
8554}
8555
8556// method id "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.retrieveInstance":
8557
8558type ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall struct {
8559	s            *Service
8560	parent       string
8561	dicomWebPath string
8562	urlParams_   gensupport.URLParams
8563	ifNoneMatch_ string
8564	ctx_         context.Context
8565	header_      http.Header
8566}
8567
8568// RetrieveInstance: RetrieveInstance returns instance associated with
8569// the given study, series,
8570// and SOP Instance UID.
8571// See
8572// http://dicom.nema.org/medical/dicom/current/output/html/part18.htm
8573// l#sect_10.4.
8574func (r *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesService) RetrieveInstance(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall {
8575	c := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall{s: r.s, urlParams_: make(gensupport.URLParams)}
8576	c.parent = parent
8577	c.dicomWebPath = dicomWebPath
8578	return c
8579}
8580
8581// Fields allows partial responses to be retrieved. See
8582// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
8583// for more information.
8584func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall {
8585	c.urlParams_.Set("fields", googleapi.CombineFields(s))
8586	return c
8587}
8588
8589// IfNoneMatch sets the optional parameter which makes the operation
8590// fail if the object's ETag matches the given value. This is useful for
8591// getting updates only after the object has changed since the last
8592// request. Use googleapi.IsNotModified to check whether the response
8593// error from Do is the result of In-None-Match.
8594func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall {
8595	c.ifNoneMatch_ = entityTag
8596	return c
8597}
8598
8599// Context sets the context to be used in this call's Do method. Any
8600// pending HTTP request will be aborted if the provided context is
8601// canceled.
8602func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall {
8603	c.ctx_ = ctx
8604	return c
8605}
8606
8607// Header returns an http.Header that can be modified by the caller to
8608// add HTTP headers to the request.
8609func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall) Header() http.Header {
8610	if c.header_ == nil {
8611		c.header_ = make(http.Header)
8612	}
8613	return c.header_
8614}
8615
8616func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall) doRequest(alt string) (*http.Response, error) {
8617	reqHeaders := make(http.Header)
8618	for k, v := range c.header_ {
8619		reqHeaders[k] = v
8620	}
8621	reqHeaders.Set("User-Agent", c.s.userAgent())
8622	if c.ifNoneMatch_ != "" {
8623		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
8624	}
8625	var body io.Reader = nil
8626	c.urlParams_.Set("alt", alt)
8627	c.urlParams_.Set("prettyPrint", "false")
8628	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}")
8629	urls += "?" + c.urlParams_.Encode()
8630	req, err := http.NewRequest("GET", urls, body)
8631	if err != nil {
8632		return nil, err
8633	}
8634	req.Header = reqHeaders
8635	googleapi.Expand(req.URL, map[string]string{
8636		"parent":       c.parent,
8637		"dicomWebPath": c.dicomWebPath,
8638	})
8639	return gensupport.SendRequest(c.ctx_, c.s.client, req)
8640}
8641
8642// Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.retrieveInstance" call.
8643func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveInstanceCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
8644	gensupport.SetOptions(c.urlParams_, opts...)
8645	return c.doRequest("")
8646	// {
8647	//   "description": "RetrieveInstance returns instance associated with the given study, series,\nand SOP Instance UID. See\nhttp://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.4.",
8648	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/studies/{studiesId}/series/{seriesId}/instances/{instancesId}",
8649	//   "httpMethod": "GET",
8650	//   "id": "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.retrieveInstance",
8651	//   "parameterOrder": [
8652	//     "parent",
8653	//     "dicomWebPath"
8654	//   ],
8655	//   "parameters": {
8656	//     "dicomWebPath": {
8657	//       "description": "The path of the RetrieveInstance DICOMweb request (e.g.,\n`studies/{study_id}/series/{series_id}/instances/{instance_id}`).",
8658	//       "location": "path",
8659	//       "pattern": "^studies/[^/]+/series/[^/]+/instances/[^/]+$",
8660	//       "required": true,
8661	//       "type": "string"
8662	//     },
8663	//     "parent": {
8664	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
8665	//       "location": "path",
8666	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
8667	//       "required": true,
8668	//       "type": "string"
8669	//     }
8670	//   },
8671	//   "path": "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}",
8672	//   "response": {
8673	//     "$ref": "HttpBody"
8674	//   },
8675	//   "scopes": [
8676	//     "https://www.googleapis.com/auth/cloud-platform"
8677	//   ]
8678	// }
8679
8680}
8681
8682// method id "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.retrieveMetadata":
8683
8684type ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall struct {
8685	s            *Service
8686	parent       string
8687	dicomWebPath string
8688	urlParams_   gensupport.URLParams
8689	ifNoneMatch_ string
8690	ctx_         context.Context
8691	header_      http.Header
8692}
8693
8694// RetrieveMetadata: RetrieveInstanceMetadata returns instance
8695// associated with the given study,
8696// series, and SOP Instance UID presented as metadata with the bulk
8697// data
8698// removed.
8699// See
8700// http://dicom.nema.org/medical/dicom/current/output/html/part18.htm
8701// l#sect_10.4.
8702func (r *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesService) RetrieveMetadata(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall {
8703	c := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall{s: r.s, urlParams_: make(gensupport.URLParams)}
8704	c.parent = parent
8705	c.dicomWebPath = dicomWebPath
8706	return c
8707}
8708
8709// Fields allows partial responses to be retrieved. See
8710// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
8711// for more information.
8712func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall {
8713	c.urlParams_.Set("fields", googleapi.CombineFields(s))
8714	return c
8715}
8716
8717// IfNoneMatch sets the optional parameter which makes the operation
8718// fail if the object's ETag matches the given value. This is useful for
8719// getting updates only after the object has changed since the last
8720// request. Use googleapi.IsNotModified to check whether the response
8721// error from Do is the result of In-None-Match.
8722func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall {
8723	c.ifNoneMatch_ = entityTag
8724	return c
8725}
8726
8727// Context sets the context to be used in this call's Do method. Any
8728// pending HTTP request will be aborted if the provided context is
8729// canceled.
8730func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall {
8731	c.ctx_ = ctx
8732	return c
8733}
8734
8735// Header returns an http.Header that can be modified by the caller to
8736// add HTTP headers to the request.
8737func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall) Header() http.Header {
8738	if c.header_ == nil {
8739		c.header_ = make(http.Header)
8740	}
8741	return c.header_
8742}
8743
8744func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall) doRequest(alt string) (*http.Response, error) {
8745	reqHeaders := make(http.Header)
8746	for k, v := range c.header_ {
8747		reqHeaders[k] = v
8748	}
8749	reqHeaders.Set("User-Agent", c.s.userAgent())
8750	if c.ifNoneMatch_ != "" {
8751		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
8752	}
8753	var body io.Reader = nil
8754	c.urlParams_.Set("alt", alt)
8755	c.urlParams_.Set("prettyPrint", "false")
8756	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}")
8757	urls += "?" + c.urlParams_.Encode()
8758	req, err := http.NewRequest("GET", urls, body)
8759	if err != nil {
8760		return nil, err
8761	}
8762	req.Header = reqHeaders
8763	googleapi.Expand(req.URL, map[string]string{
8764		"parent":       c.parent,
8765		"dicomWebPath": c.dicomWebPath,
8766	})
8767	return gensupport.SendRequest(c.ctx_, c.s.client, req)
8768}
8769
8770// Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.retrieveMetadata" call.
8771func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveMetadataCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
8772	gensupport.SetOptions(c.urlParams_, opts...)
8773	return c.doRequest("")
8774	// {
8775	//   "description": "RetrieveInstanceMetadata returns instance associated with the given study,\nseries, and SOP Instance UID presented as metadata with the bulk data\nremoved. See\nhttp://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.4.",
8776	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/studies/{studiesId}/series/{seriesId}/instances/{instancesId}/metadata",
8777	//   "httpMethod": "GET",
8778	//   "id": "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.retrieveMetadata",
8779	//   "parameterOrder": [
8780	//     "parent",
8781	//     "dicomWebPath"
8782	//   ],
8783	//   "parameters": {
8784	//     "dicomWebPath": {
8785	//       "description": "The path of the RetrieveInstanceMetadata DICOMweb request (e.g.,\n`studies/{study_id}/series/{series_id}/instances/{instance_id}/metadata`).",
8786	//       "location": "path",
8787	//       "pattern": "^studies/[^/]+/series/[^/]+/instances/[^/]+/metadata$",
8788	//       "required": true,
8789	//       "type": "string"
8790	//     },
8791	//     "parent": {
8792	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
8793	//       "location": "path",
8794	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
8795	//       "required": true,
8796	//       "type": "string"
8797	//     }
8798	//   },
8799	//   "path": "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}",
8800	//   "response": {
8801	//     "$ref": "HttpBody"
8802	//   },
8803	//   "scopes": [
8804	//     "https://www.googleapis.com/auth/cloud-platform"
8805	//   ]
8806	// }
8807
8808}
8809
8810// method id "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.retrieveRendered":
8811
8812type ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall struct {
8813	s            *Service
8814	parent       string
8815	dicomWebPath string
8816	urlParams_   gensupport.URLParams
8817	ifNoneMatch_ string
8818	ctx_         context.Context
8819	header_      http.Header
8820}
8821
8822// RetrieveRendered: RetrieveRenderedInstance returns instance
8823// associated with the given study,
8824// series, and SOP Instance UID in an acceptable Rendered Media Type.
8825// See
8826// http://dicom.nema.org/medical/dicom/current/output/html/part18.htm
8827// l#sect_10.4.
8828func (r *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesService) RetrieveRendered(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall {
8829	c := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall{s: r.s, urlParams_: make(gensupport.URLParams)}
8830	c.parent = parent
8831	c.dicomWebPath = dicomWebPath
8832	return c
8833}
8834
8835// Fields allows partial responses to be retrieved. See
8836// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
8837// for more information.
8838func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall {
8839	c.urlParams_.Set("fields", googleapi.CombineFields(s))
8840	return c
8841}
8842
8843// IfNoneMatch sets the optional parameter which makes the operation
8844// fail if the object's ETag matches the given value. This is useful for
8845// getting updates only after the object has changed since the last
8846// request. Use googleapi.IsNotModified to check whether the response
8847// error from Do is the result of In-None-Match.
8848func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall {
8849	c.ifNoneMatch_ = entityTag
8850	return c
8851}
8852
8853// Context sets the context to be used in this call's Do method. Any
8854// pending HTTP request will be aborted if the provided context is
8855// canceled.
8856func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall {
8857	c.ctx_ = ctx
8858	return c
8859}
8860
8861// Header returns an http.Header that can be modified by the caller to
8862// add HTTP headers to the request.
8863func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall) Header() http.Header {
8864	if c.header_ == nil {
8865		c.header_ = make(http.Header)
8866	}
8867	return c.header_
8868}
8869
8870func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall) doRequest(alt string) (*http.Response, error) {
8871	reqHeaders := make(http.Header)
8872	for k, v := range c.header_ {
8873		reqHeaders[k] = v
8874	}
8875	reqHeaders.Set("User-Agent", c.s.userAgent())
8876	if c.ifNoneMatch_ != "" {
8877		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
8878	}
8879	var body io.Reader = nil
8880	c.urlParams_.Set("alt", alt)
8881	c.urlParams_.Set("prettyPrint", "false")
8882	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}")
8883	urls += "?" + c.urlParams_.Encode()
8884	req, err := http.NewRequest("GET", urls, body)
8885	if err != nil {
8886		return nil, err
8887	}
8888	req.Header = reqHeaders
8889	googleapi.Expand(req.URL, map[string]string{
8890		"parent":       c.parent,
8891		"dicomWebPath": c.dicomWebPath,
8892	})
8893	return gensupport.SendRequest(c.ctx_, c.s.client, req)
8894}
8895
8896// Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.retrieveRendered" call.
8897func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesRetrieveRenderedCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
8898	gensupport.SetOptions(c.urlParams_, opts...)
8899	return c.doRequest("")
8900	// {
8901	//   "description": "RetrieveRenderedInstance returns instance associated with the given study,\nseries, and SOP Instance UID in an acceptable Rendered Media Type. See\nhttp://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.4.",
8902	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/studies/{studiesId}/series/{seriesId}/instances/{instancesId}/rendered",
8903	//   "httpMethod": "GET",
8904	//   "id": "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.retrieveRendered",
8905	//   "parameterOrder": [
8906	//     "parent",
8907	//     "dicomWebPath"
8908	//   ],
8909	//   "parameters": {
8910	//     "dicomWebPath": {
8911	//       "description": "The path of the RetrieveRenderedInstance DICOMweb request (e.g.,\n`studies/{study_id}/series/{series_id}/instances/{instance_id}/rendered`).",
8912	//       "location": "path",
8913	//       "pattern": "^studies/[^/]+/series/[^/]+/instances/[^/]+/rendered$",
8914	//       "required": true,
8915	//       "type": "string"
8916	//     },
8917	//     "parent": {
8918	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
8919	//       "location": "path",
8920	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
8921	//       "required": true,
8922	//       "type": "string"
8923	//     }
8924	//   },
8925	//   "path": "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}",
8926	//   "response": {
8927	//     "$ref": "HttpBody"
8928	//   },
8929	//   "scopes": [
8930	//     "https://www.googleapis.com/auth/cloud-platform"
8931	//   ]
8932	// }
8933
8934}
8935
8936// method id "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.frames.retrieveFrames":
8937
8938type ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall struct {
8939	s            *Service
8940	parent       string
8941	dicomWebPath string
8942	urlParams_   gensupport.URLParams
8943	ifNoneMatch_ string
8944	ctx_         context.Context
8945	header_      http.Header
8946}
8947
8948// RetrieveFrames: RetrieveFrames returns instances associated with the
8949// given study, series,
8950// SOP Instance UID and frame numbers.
8951// See
8952// http://dicom.nema.org/medical/dicom/current/output/html/part18.htm
8953// l#sect_10.4.
8954func (r *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesService) RetrieveFrames(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall {
8955	c := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
8956	c.parent = parent
8957	c.dicomWebPath = dicomWebPath
8958	return c
8959}
8960
8961// Fields allows partial responses to be retrieved. See
8962// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
8963// for more information.
8964func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall {
8965	c.urlParams_.Set("fields", googleapi.CombineFields(s))
8966	return c
8967}
8968
8969// IfNoneMatch sets the optional parameter which makes the operation
8970// fail if the object's ETag matches the given value. This is useful for
8971// getting updates only after the object has changed since the last
8972// request. Use googleapi.IsNotModified to check whether the response
8973// error from Do is the result of In-None-Match.
8974func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall {
8975	c.ifNoneMatch_ = entityTag
8976	return c
8977}
8978
8979// Context sets the context to be used in this call's Do method. Any
8980// pending HTTP request will be aborted if the provided context is
8981// canceled.
8982func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall {
8983	c.ctx_ = ctx
8984	return c
8985}
8986
8987// Header returns an http.Header that can be modified by the caller to
8988// add HTTP headers to the request.
8989func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall) Header() http.Header {
8990	if c.header_ == nil {
8991		c.header_ = make(http.Header)
8992	}
8993	return c.header_
8994}
8995
8996func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall) doRequest(alt string) (*http.Response, error) {
8997	reqHeaders := make(http.Header)
8998	for k, v := range c.header_ {
8999		reqHeaders[k] = v
9000	}
9001	reqHeaders.Set("User-Agent", c.s.userAgent())
9002	if c.ifNoneMatch_ != "" {
9003		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
9004	}
9005	var body io.Reader = nil
9006	c.urlParams_.Set("alt", alt)
9007	c.urlParams_.Set("prettyPrint", "false")
9008	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}")
9009	urls += "?" + c.urlParams_.Encode()
9010	req, err := http.NewRequest("GET", urls, body)
9011	if err != nil {
9012		return nil, err
9013	}
9014	req.Header = reqHeaders
9015	googleapi.Expand(req.URL, map[string]string{
9016		"parent":       c.parent,
9017		"dicomWebPath": c.dicomWebPath,
9018	})
9019	return gensupport.SendRequest(c.ctx_, c.s.client, req)
9020}
9021
9022// Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.frames.retrieveFrames" call.
9023func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveFramesCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
9024	gensupport.SetOptions(c.urlParams_, opts...)
9025	return c.doRequest("")
9026	// {
9027	//   "description": "RetrieveFrames returns instances associated with the given study, series,\nSOP Instance UID and frame numbers. See\nhttp://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.4.",
9028	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/studies/{studiesId}/series/{seriesId}/instances/{instancesId}/frames/{framesId}",
9029	//   "httpMethod": "GET",
9030	//   "id": "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.frames.retrieveFrames",
9031	//   "parameterOrder": [
9032	//     "parent",
9033	//     "dicomWebPath"
9034	//   ],
9035	//   "parameters": {
9036	//     "dicomWebPath": {
9037	//       "description": "The path of the RetrieveFrames DICOMweb request (e.g.,\n`studies/{study_id}/series/{series_id}/instances/{instance_id}/frames/{frame_list}`).",
9038	//       "location": "path",
9039	//       "pattern": "^studies/[^/]+/series/[^/]+/instances/[^/]+/frames/[^/]+$",
9040	//       "required": true,
9041	//       "type": "string"
9042	//     },
9043	//     "parent": {
9044	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
9045	//       "location": "path",
9046	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
9047	//       "required": true,
9048	//       "type": "string"
9049	//     }
9050	//   },
9051	//   "path": "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}",
9052	//   "response": {
9053	//     "$ref": "HttpBody"
9054	//   },
9055	//   "scopes": [
9056	//     "https://www.googleapis.com/auth/cloud-platform"
9057	//   ]
9058	// }
9059
9060}
9061
9062// method id "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.frames.retrieveRendered":
9063
9064type ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall struct {
9065	s            *Service
9066	parent       string
9067	dicomWebPath string
9068	urlParams_   gensupport.URLParams
9069	ifNoneMatch_ string
9070	ctx_         context.Context
9071	header_      http.Header
9072}
9073
9074// RetrieveRendered: RetrieveRenderedFrames returns instances associated
9075// with the given study,
9076// series, SOP Instance UID and frame numbers in an acceptable Rendered
9077// Media
9078// Type.
9079// See
9080// http://dicom.nema.org/medical/dicom/current/output/html/part18.htm
9081// l#sect_10.4.
9082func (r *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesService) RetrieveRendered(parent string, dicomWebPath string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall {
9083	c := &ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall{s: r.s, urlParams_: make(gensupport.URLParams)}
9084	c.parent = parent
9085	c.dicomWebPath = dicomWebPath
9086	return c
9087}
9088
9089// Fields allows partial responses to be retrieved. See
9090// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
9091// for more information.
9092func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall {
9093	c.urlParams_.Set("fields", googleapi.CombineFields(s))
9094	return c
9095}
9096
9097// IfNoneMatch sets the optional parameter which makes the operation
9098// fail if the object's ETag matches the given value. This is useful for
9099// getting updates only after the object has changed since the last
9100// request. Use googleapi.IsNotModified to check whether the response
9101// error from Do is the result of In-None-Match.
9102func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall {
9103	c.ifNoneMatch_ = entityTag
9104	return c
9105}
9106
9107// Context sets the context to be used in this call's Do method. Any
9108// pending HTTP request will be aborted if the provided context is
9109// canceled.
9110func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall) Context(ctx context.Context) *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall {
9111	c.ctx_ = ctx
9112	return c
9113}
9114
9115// Header returns an http.Header that can be modified by the caller to
9116// add HTTP headers to the request.
9117func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall) Header() http.Header {
9118	if c.header_ == nil {
9119		c.header_ = make(http.Header)
9120	}
9121	return c.header_
9122}
9123
9124func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall) doRequest(alt string) (*http.Response, error) {
9125	reqHeaders := make(http.Header)
9126	for k, v := range c.header_ {
9127		reqHeaders[k] = v
9128	}
9129	reqHeaders.Set("User-Agent", c.s.userAgent())
9130	if c.ifNoneMatch_ != "" {
9131		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
9132	}
9133	var body io.Reader = nil
9134	c.urlParams_.Set("alt", alt)
9135	c.urlParams_.Set("prettyPrint", "false")
9136	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}")
9137	urls += "?" + c.urlParams_.Encode()
9138	req, err := http.NewRequest("GET", urls, body)
9139	if err != nil {
9140		return nil, err
9141	}
9142	req.Header = reqHeaders
9143	googleapi.Expand(req.URL, map[string]string{
9144		"parent":       c.parent,
9145		"dicomWebPath": c.dicomWebPath,
9146	})
9147	return gensupport.SendRequest(c.ctx_, c.s.client, req)
9148}
9149
9150// Do executes the "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.frames.retrieveRendered" call.
9151func (c *ProjectsLocationsDatasetsDicomStoresStudiesSeriesInstancesFramesRetrieveRenderedCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
9152	gensupport.SetOptions(c.urlParams_, opts...)
9153	return c.doRequest("")
9154	// {
9155	//   "description": "RetrieveRenderedFrames returns instances associated with the given study,\nseries, SOP Instance UID and frame numbers in an acceptable Rendered Media\nType. See\nhttp://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_10.4.",
9156	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/dicomStores/{dicomStoresId}/dicomWeb/studies/{studiesId}/series/{seriesId}/instances/{instancesId}/frames/{framesId}/rendered",
9157	//   "httpMethod": "GET",
9158	//   "id": "healthcare.projects.locations.datasets.dicomStores.studies.series.instances.frames.retrieveRendered",
9159	//   "parameterOrder": [
9160	//     "parent",
9161	//     "dicomWebPath"
9162	//   ],
9163	//   "parameters": {
9164	//     "dicomWebPath": {
9165	//       "description": "The path of the RetrieveRenderedFrames DICOMweb request (e.g.,\n`studies/{study_id}/series/{series_id}/instances/{instance_id}/frames/{frame_list}/rendered`).",
9166	//       "location": "path",
9167	//       "pattern": "^studies/[^/]+/series/[^/]+/instances/[^/]+/frames/[^/]+/rendered$",
9168	//       "required": true,
9169	//       "type": "string"
9170	//     },
9171	//     "parent": {
9172	//       "description": "The name of the DICOM store that is being accessed (e.g.,\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/dicomStores/{dicom_store_id}`).",
9173	//       "location": "path",
9174	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/dicomStores/[^/]+$",
9175	//       "required": true,
9176	//       "type": "string"
9177	//     }
9178	//   },
9179	//   "path": "v1beta1/{+parent}/dicomWeb/{+dicomWebPath}",
9180	//   "response": {
9181	//     "$ref": "HttpBody"
9182	//   },
9183	//   "scopes": [
9184	//     "https://www.googleapis.com/auth/cloud-platform"
9185	//   ]
9186	// }
9187
9188}
9189
9190// method id "healthcare.projects.locations.datasets.fhirStores.create":
9191
9192type ProjectsLocationsDatasetsFhirStoresCreateCall struct {
9193	s          *Service
9194	parent     string
9195	fhirstore  *FhirStore
9196	urlParams_ gensupport.URLParams
9197	ctx_       context.Context
9198	header_    http.Header
9199}
9200
9201// Create: Creates a new FHIR store within the parent dataset.
9202func (r *ProjectsLocationsDatasetsFhirStoresService) Create(parent string, fhirstore *FhirStore) *ProjectsLocationsDatasetsFhirStoresCreateCall {
9203	c := &ProjectsLocationsDatasetsFhirStoresCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
9204	c.parent = parent
9205	c.fhirstore = fhirstore
9206	return c
9207}
9208
9209// FhirStoreId sets the optional parameter "fhirStoreId": The ID of the
9210// FHIR store that is being created.
9211// The string must match the following regex:
9212// `[\p{L}\p{N}_\-\.]{1,256}`.
9213func (c *ProjectsLocationsDatasetsFhirStoresCreateCall) FhirStoreId(fhirStoreId string) *ProjectsLocationsDatasetsFhirStoresCreateCall {
9214	c.urlParams_.Set("fhirStoreId", fhirStoreId)
9215	return c
9216}
9217
9218// Fields allows partial responses to be retrieved. See
9219// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
9220// for more information.
9221func (c *ProjectsLocationsDatasetsFhirStoresCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresCreateCall {
9222	c.urlParams_.Set("fields", googleapi.CombineFields(s))
9223	return c
9224}
9225
9226// Context sets the context to be used in this call's Do method. Any
9227// pending HTTP request will be aborted if the provided context is
9228// canceled.
9229func (c *ProjectsLocationsDatasetsFhirStoresCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresCreateCall {
9230	c.ctx_ = ctx
9231	return c
9232}
9233
9234// Header returns an http.Header that can be modified by the caller to
9235// add HTTP headers to the request.
9236func (c *ProjectsLocationsDatasetsFhirStoresCreateCall) Header() http.Header {
9237	if c.header_ == nil {
9238		c.header_ = make(http.Header)
9239	}
9240	return c.header_
9241}
9242
9243func (c *ProjectsLocationsDatasetsFhirStoresCreateCall) doRequest(alt string) (*http.Response, error) {
9244	reqHeaders := make(http.Header)
9245	for k, v := range c.header_ {
9246		reqHeaders[k] = v
9247	}
9248	reqHeaders.Set("User-Agent", c.s.userAgent())
9249	var body io.Reader = nil
9250	body, err := googleapi.WithoutDataWrapper.JSONReader(c.fhirstore)
9251	if err != nil {
9252		return nil, err
9253	}
9254	reqHeaders.Set("Content-Type", "application/json")
9255	c.urlParams_.Set("alt", alt)
9256	c.urlParams_.Set("prettyPrint", "false")
9257	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/fhirStores")
9258	urls += "?" + c.urlParams_.Encode()
9259	req, err := http.NewRequest("POST", urls, body)
9260	if err != nil {
9261		return nil, err
9262	}
9263	req.Header = reqHeaders
9264	googleapi.Expand(req.URL, map[string]string{
9265		"parent": c.parent,
9266	})
9267	return gensupport.SendRequest(c.ctx_, c.s.client, req)
9268}
9269
9270// Do executes the "healthcare.projects.locations.datasets.fhirStores.create" call.
9271// Exactly one of *FhirStore or error will be non-nil. Any non-2xx
9272// status code is an error. Response headers are in either
9273// *FhirStore.ServerResponse.Header or (if a response was returned at
9274// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
9275// to check whether the returned error was because
9276// http.StatusNotModified was returned.
9277func (c *ProjectsLocationsDatasetsFhirStoresCreateCall) Do(opts ...googleapi.CallOption) (*FhirStore, error) {
9278	gensupport.SetOptions(c.urlParams_, opts...)
9279	res, err := c.doRequest("json")
9280	if res != nil && res.StatusCode == http.StatusNotModified {
9281		if res.Body != nil {
9282			res.Body.Close()
9283		}
9284		return nil, &googleapi.Error{
9285			Code:   res.StatusCode,
9286			Header: res.Header,
9287		}
9288	}
9289	if err != nil {
9290		return nil, err
9291	}
9292	defer googleapi.CloseBody(res)
9293	if err := googleapi.CheckResponse(res); err != nil {
9294		return nil, err
9295	}
9296	ret := &FhirStore{
9297		ServerResponse: googleapi.ServerResponse{
9298			Header:         res.Header,
9299			HTTPStatusCode: res.StatusCode,
9300		},
9301	}
9302	target := &ret
9303	if err := gensupport.DecodeResponse(target, res); err != nil {
9304		return nil, err
9305	}
9306	return ret, nil
9307	// {
9308	//   "description": "Creates a new FHIR store within the parent dataset.",
9309	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores",
9310	//   "httpMethod": "POST",
9311	//   "id": "healthcare.projects.locations.datasets.fhirStores.create",
9312	//   "parameterOrder": [
9313	//     "parent"
9314	//   ],
9315	//   "parameters": {
9316	//     "fhirStoreId": {
9317	//       "description": "The ID of the FHIR store that is being created.\nThe string must match the following regex: `[\\p{L}\\p{N}_\\-\\.]{1,256}`.",
9318	//       "location": "query",
9319	//       "type": "string"
9320	//     },
9321	//     "parent": {
9322	//       "description": "The name of the dataset this FHIR store belongs to.",
9323	//       "location": "path",
9324	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
9325	//       "required": true,
9326	//       "type": "string"
9327	//     }
9328	//   },
9329	//   "path": "v1beta1/{+parent}/fhirStores",
9330	//   "request": {
9331	//     "$ref": "FhirStore"
9332	//   },
9333	//   "response": {
9334	//     "$ref": "FhirStore"
9335	//   },
9336	//   "scopes": [
9337	//     "https://www.googleapis.com/auth/cloud-platform"
9338	//   ]
9339	// }
9340
9341}
9342
9343// method id "healthcare.projects.locations.datasets.fhirStores.delete":
9344
9345type ProjectsLocationsDatasetsFhirStoresDeleteCall struct {
9346	s          *Service
9347	name       string
9348	urlParams_ gensupport.URLParams
9349	ctx_       context.Context
9350	header_    http.Header
9351}
9352
9353// Delete: Deletes the specified FHIR store and removes all resources
9354// within it.
9355func (r *ProjectsLocationsDatasetsFhirStoresService) Delete(name string) *ProjectsLocationsDatasetsFhirStoresDeleteCall {
9356	c := &ProjectsLocationsDatasetsFhirStoresDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
9357	c.name = name
9358	return c
9359}
9360
9361// Fields allows partial responses to be retrieved. See
9362// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
9363// for more information.
9364func (c *ProjectsLocationsDatasetsFhirStoresDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresDeleteCall {
9365	c.urlParams_.Set("fields", googleapi.CombineFields(s))
9366	return c
9367}
9368
9369// Context sets the context to be used in this call's Do method. Any
9370// pending HTTP request will be aborted if the provided context is
9371// canceled.
9372func (c *ProjectsLocationsDatasetsFhirStoresDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresDeleteCall {
9373	c.ctx_ = ctx
9374	return c
9375}
9376
9377// Header returns an http.Header that can be modified by the caller to
9378// add HTTP headers to the request.
9379func (c *ProjectsLocationsDatasetsFhirStoresDeleteCall) Header() http.Header {
9380	if c.header_ == nil {
9381		c.header_ = make(http.Header)
9382	}
9383	return c.header_
9384}
9385
9386func (c *ProjectsLocationsDatasetsFhirStoresDeleteCall) doRequest(alt string) (*http.Response, error) {
9387	reqHeaders := make(http.Header)
9388	for k, v := range c.header_ {
9389		reqHeaders[k] = v
9390	}
9391	reqHeaders.Set("User-Agent", c.s.userAgent())
9392	var body io.Reader = nil
9393	c.urlParams_.Set("alt", alt)
9394	c.urlParams_.Set("prettyPrint", "false")
9395	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
9396	urls += "?" + c.urlParams_.Encode()
9397	req, err := http.NewRequest("DELETE", urls, body)
9398	if err != nil {
9399		return nil, err
9400	}
9401	req.Header = reqHeaders
9402	googleapi.Expand(req.URL, map[string]string{
9403		"name": c.name,
9404	})
9405	return gensupport.SendRequest(c.ctx_, c.s.client, req)
9406}
9407
9408// Do executes the "healthcare.projects.locations.datasets.fhirStores.delete" call.
9409// Exactly one of *Empty or error will be non-nil. Any non-2xx status
9410// code is an error. Response headers are in either
9411// *Empty.ServerResponse.Header or (if a response was returned at all)
9412// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
9413// check whether the returned error was because http.StatusNotModified
9414// was returned.
9415func (c *ProjectsLocationsDatasetsFhirStoresDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
9416	gensupport.SetOptions(c.urlParams_, opts...)
9417	res, err := c.doRequest("json")
9418	if res != nil && res.StatusCode == http.StatusNotModified {
9419		if res.Body != nil {
9420			res.Body.Close()
9421		}
9422		return nil, &googleapi.Error{
9423			Code:   res.StatusCode,
9424			Header: res.Header,
9425		}
9426	}
9427	if err != nil {
9428		return nil, err
9429	}
9430	defer googleapi.CloseBody(res)
9431	if err := googleapi.CheckResponse(res); err != nil {
9432		return nil, err
9433	}
9434	ret := &Empty{
9435		ServerResponse: googleapi.ServerResponse{
9436			Header:         res.Header,
9437			HTTPStatusCode: res.StatusCode,
9438		},
9439	}
9440	target := &ret
9441	if err := gensupport.DecodeResponse(target, res); err != nil {
9442		return nil, err
9443	}
9444	return ret, nil
9445	// {
9446	//   "description": "Deletes the specified FHIR store and removes all resources within it.",
9447	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}",
9448	//   "httpMethod": "DELETE",
9449	//   "id": "healthcare.projects.locations.datasets.fhirStores.delete",
9450	//   "parameterOrder": [
9451	//     "name"
9452	//   ],
9453	//   "parameters": {
9454	//     "name": {
9455	//       "description": "The resource name of the FHIR store to delete.",
9456	//       "location": "path",
9457	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
9458	//       "required": true,
9459	//       "type": "string"
9460	//     }
9461	//   },
9462	//   "path": "v1beta1/{+name}",
9463	//   "response": {
9464	//     "$ref": "Empty"
9465	//   },
9466	//   "scopes": [
9467	//     "https://www.googleapis.com/auth/cloud-platform"
9468	//   ]
9469	// }
9470
9471}
9472
9473// method id "healthcare.projects.locations.datasets.fhirStores.export":
9474
9475type ProjectsLocationsDatasetsFhirStoresExportCall struct {
9476	s                      *Service
9477	name                   string
9478	exportresourcesrequest *ExportResourcesRequest
9479	urlParams_             gensupport.URLParams
9480	ctx_                   context.Context
9481	header_                http.Header
9482}
9483
9484// Export: Export resources from the FHIR store to the specified
9485// destination.
9486//
9487// This method returns an Operation that can
9488// be used to track the status of the export by
9489// calling
9490// GetOperation.
9491//
9492// Immediate fatal errors appear in the
9493// error field.
9494// Otherwise, when the operation finishes, a detailed response of
9495// type
9496// ExportResourcesResponse is returned in the
9497// response field.
9498// The metadata field type for this
9499// operation is OperationMetadata.
9500func (r *ProjectsLocationsDatasetsFhirStoresService) Export(name string, exportresourcesrequest *ExportResourcesRequest) *ProjectsLocationsDatasetsFhirStoresExportCall {
9501	c := &ProjectsLocationsDatasetsFhirStoresExportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
9502	c.name = name
9503	c.exportresourcesrequest = exportresourcesrequest
9504	return c
9505}
9506
9507// Fields allows partial responses to be retrieved. See
9508// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
9509// for more information.
9510func (c *ProjectsLocationsDatasetsFhirStoresExportCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresExportCall {
9511	c.urlParams_.Set("fields", googleapi.CombineFields(s))
9512	return c
9513}
9514
9515// Context sets the context to be used in this call's Do method. Any
9516// pending HTTP request will be aborted if the provided context is
9517// canceled.
9518func (c *ProjectsLocationsDatasetsFhirStoresExportCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresExportCall {
9519	c.ctx_ = ctx
9520	return c
9521}
9522
9523// Header returns an http.Header that can be modified by the caller to
9524// add HTTP headers to the request.
9525func (c *ProjectsLocationsDatasetsFhirStoresExportCall) Header() http.Header {
9526	if c.header_ == nil {
9527		c.header_ = make(http.Header)
9528	}
9529	return c.header_
9530}
9531
9532func (c *ProjectsLocationsDatasetsFhirStoresExportCall) doRequest(alt string) (*http.Response, error) {
9533	reqHeaders := make(http.Header)
9534	for k, v := range c.header_ {
9535		reqHeaders[k] = v
9536	}
9537	reqHeaders.Set("User-Agent", c.s.userAgent())
9538	var body io.Reader = nil
9539	body, err := googleapi.WithoutDataWrapper.JSONReader(c.exportresourcesrequest)
9540	if err != nil {
9541		return nil, err
9542	}
9543	reqHeaders.Set("Content-Type", "application/json")
9544	c.urlParams_.Set("alt", alt)
9545	c.urlParams_.Set("prettyPrint", "false")
9546	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:export")
9547	urls += "?" + c.urlParams_.Encode()
9548	req, err := http.NewRequest("POST", urls, body)
9549	if err != nil {
9550		return nil, err
9551	}
9552	req.Header = reqHeaders
9553	googleapi.Expand(req.URL, map[string]string{
9554		"name": c.name,
9555	})
9556	return gensupport.SendRequest(c.ctx_, c.s.client, req)
9557}
9558
9559// Do executes the "healthcare.projects.locations.datasets.fhirStores.export" call.
9560// Exactly one of *Operation or error will be non-nil. Any non-2xx
9561// status code is an error. Response headers are in either
9562// *Operation.ServerResponse.Header or (if a response was returned at
9563// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
9564// to check whether the returned error was because
9565// http.StatusNotModified was returned.
9566func (c *ProjectsLocationsDatasetsFhirStoresExportCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
9567	gensupport.SetOptions(c.urlParams_, opts...)
9568	res, err := c.doRequest("json")
9569	if res != nil && res.StatusCode == http.StatusNotModified {
9570		if res.Body != nil {
9571			res.Body.Close()
9572		}
9573		return nil, &googleapi.Error{
9574			Code:   res.StatusCode,
9575			Header: res.Header,
9576		}
9577	}
9578	if err != nil {
9579		return nil, err
9580	}
9581	defer googleapi.CloseBody(res)
9582	if err := googleapi.CheckResponse(res); err != nil {
9583		return nil, err
9584	}
9585	ret := &Operation{
9586		ServerResponse: googleapi.ServerResponse{
9587			Header:         res.Header,
9588			HTTPStatusCode: res.StatusCode,
9589		},
9590	}
9591	target := &ret
9592	if err := gensupport.DecodeResponse(target, res); err != nil {
9593		return nil, err
9594	}
9595	return ret, nil
9596	// {
9597	//   "description": "Export resources from the FHIR store to the specified destination.\n\nThis method returns an Operation that can\nbe used to track the status of the export by calling\nGetOperation.\n\nImmediate fatal errors appear in the\nerror field.\nOtherwise, when the operation finishes, a detailed response of type\nExportResourcesResponse is returned in the\nresponse field.\nThe metadata field type for this\noperation is OperationMetadata.",
9598	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}:export",
9599	//   "httpMethod": "POST",
9600	//   "id": "healthcare.projects.locations.datasets.fhirStores.export",
9601	//   "parameterOrder": [
9602	//     "name"
9603	//   ],
9604	//   "parameters": {
9605	//     "name": {
9606	//       "description": "The name of the FHIR store to export resource from. The name should be in\nthe format of\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/fhirStores/{fhir_store_id}`.",
9607	//       "location": "path",
9608	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
9609	//       "required": true,
9610	//       "type": "string"
9611	//     }
9612	//   },
9613	//   "path": "v1beta1/{+name}:export",
9614	//   "request": {
9615	//     "$ref": "ExportResourcesRequest"
9616	//   },
9617	//   "response": {
9618	//     "$ref": "Operation"
9619	//   },
9620	//   "scopes": [
9621	//     "https://www.googleapis.com/auth/cloud-platform"
9622	//   ]
9623	// }
9624
9625}
9626
9627// method id "healthcare.projects.locations.datasets.fhirStores.get":
9628
9629type ProjectsLocationsDatasetsFhirStoresGetCall struct {
9630	s            *Service
9631	name         string
9632	urlParams_   gensupport.URLParams
9633	ifNoneMatch_ string
9634	ctx_         context.Context
9635	header_      http.Header
9636}
9637
9638// Get: Gets the configuration of the specified FHIR store.
9639func (r *ProjectsLocationsDatasetsFhirStoresService) Get(name string) *ProjectsLocationsDatasetsFhirStoresGetCall {
9640	c := &ProjectsLocationsDatasetsFhirStoresGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
9641	c.name = name
9642	return c
9643}
9644
9645// Fields allows partial responses to be retrieved. See
9646// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
9647// for more information.
9648func (c *ProjectsLocationsDatasetsFhirStoresGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresGetCall {
9649	c.urlParams_.Set("fields", googleapi.CombineFields(s))
9650	return c
9651}
9652
9653// IfNoneMatch sets the optional parameter which makes the operation
9654// fail if the object's ETag matches the given value. This is useful for
9655// getting updates only after the object has changed since the last
9656// request. Use googleapi.IsNotModified to check whether the response
9657// error from Do is the result of In-None-Match.
9658func (c *ProjectsLocationsDatasetsFhirStoresGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresGetCall {
9659	c.ifNoneMatch_ = entityTag
9660	return c
9661}
9662
9663// Context sets the context to be used in this call's Do method. Any
9664// pending HTTP request will be aborted if the provided context is
9665// canceled.
9666func (c *ProjectsLocationsDatasetsFhirStoresGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresGetCall {
9667	c.ctx_ = ctx
9668	return c
9669}
9670
9671// Header returns an http.Header that can be modified by the caller to
9672// add HTTP headers to the request.
9673func (c *ProjectsLocationsDatasetsFhirStoresGetCall) Header() http.Header {
9674	if c.header_ == nil {
9675		c.header_ = make(http.Header)
9676	}
9677	return c.header_
9678}
9679
9680func (c *ProjectsLocationsDatasetsFhirStoresGetCall) doRequest(alt string) (*http.Response, error) {
9681	reqHeaders := make(http.Header)
9682	for k, v := range c.header_ {
9683		reqHeaders[k] = v
9684	}
9685	reqHeaders.Set("User-Agent", c.s.userAgent())
9686	if c.ifNoneMatch_ != "" {
9687		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
9688	}
9689	var body io.Reader = nil
9690	c.urlParams_.Set("alt", alt)
9691	c.urlParams_.Set("prettyPrint", "false")
9692	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
9693	urls += "?" + c.urlParams_.Encode()
9694	req, err := http.NewRequest("GET", urls, body)
9695	if err != nil {
9696		return nil, err
9697	}
9698	req.Header = reqHeaders
9699	googleapi.Expand(req.URL, map[string]string{
9700		"name": c.name,
9701	})
9702	return gensupport.SendRequest(c.ctx_, c.s.client, req)
9703}
9704
9705// Do executes the "healthcare.projects.locations.datasets.fhirStores.get" call.
9706// Exactly one of *FhirStore or error will be non-nil. Any non-2xx
9707// status code is an error. Response headers are in either
9708// *FhirStore.ServerResponse.Header or (if a response was returned at
9709// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
9710// to check whether the returned error was because
9711// http.StatusNotModified was returned.
9712func (c *ProjectsLocationsDatasetsFhirStoresGetCall) Do(opts ...googleapi.CallOption) (*FhirStore, error) {
9713	gensupport.SetOptions(c.urlParams_, opts...)
9714	res, err := c.doRequest("json")
9715	if res != nil && res.StatusCode == http.StatusNotModified {
9716		if res.Body != nil {
9717			res.Body.Close()
9718		}
9719		return nil, &googleapi.Error{
9720			Code:   res.StatusCode,
9721			Header: res.Header,
9722		}
9723	}
9724	if err != nil {
9725		return nil, err
9726	}
9727	defer googleapi.CloseBody(res)
9728	if err := googleapi.CheckResponse(res); err != nil {
9729		return nil, err
9730	}
9731	ret := &FhirStore{
9732		ServerResponse: googleapi.ServerResponse{
9733			Header:         res.Header,
9734			HTTPStatusCode: res.StatusCode,
9735		},
9736	}
9737	target := &ret
9738	if err := gensupport.DecodeResponse(target, res); err != nil {
9739		return nil, err
9740	}
9741	return ret, nil
9742	// {
9743	//   "description": "Gets the configuration of the specified FHIR store.",
9744	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}",
9745	//   "httpMethod": "GET",
9746	//   "id": "healthcare.projects.locations.datasets.fhirStores.get",
9747	//   "parameterOrder": [
9748	//     "name"
9749	//   ],
9750	//   "parameters": {
9751	//     "name": {
9752	//       "description": "The resource name of the FHIR store to get.",
9753	//       "location": "path",
9754	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
9755	//       "required": true,
9756	//       "type": "string"
9757	//     }
9758	//   },
9759	//   "path": "v1beta1/{+name}",
9760	//   "response": {
9761	//     "$ref": "FhirStore"
9762	//   },
9763	//   "scopes": [
9764	//     "https://www.googleapis.com/auth/cloud-platform"
9765	//   ]
9766	// }
9767
9768}
9769
9770// method id "healthcare.projects.locations.datasets.fhirStores.getIamPolicy":
9771
9772type ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall struct {
9773	s            *Service
9774	resource     string
9775	urlParams_   gensupport.URLParams
9776	ifNoneMatch_ string
9777	ctx_         context.Context
9778	header_      http.Header
9779}
9780
9781// GetIamPolicy: Gets the access control policy for a resource.
9782// Returns an empty policy if the resource exists and does not have a
9783// policy
9784// set.
9785func (r *ProjectsLocationsDatasetsFhirStoresService) GetIamPolicy(resource string) *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall {
9786	c := &ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
9787	c.resource = resource
9788	return c
9789}
9790
9791// Fields allows partial responses to be retrieved. See
9792// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
9793// for more information.
9794func (c *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall {
9795	c.urlParams_.Set("fields", googleapi.CombineFields(s))
9796	return c
9797}
9798
9799// IfNoneMatch sets the optional parameter which makes the operation
9800// fail if the object's ETag matches the given value. This is useful for
9801// getting updates only after the object has changed since the last
9802// request. Use googleapi.IsNotModified to check whether the response
9803// error from Do is the result of In-None-Match.
9804func (c *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall {
9805	c.ifNoneMatch_ = entityTag
9806	return c
9807}
9808
9809// Context sets the context to be used in this call's Do method. Any
9810// pending HTTP request will be aborted if the provided context is
9811// canceled.
9812func (c *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall {
9813	c.ctx_ = ctx
9814	return c
9815}
9816
9817// Header returns an http.Header that can be modified by the caller to
9818// add HTTP headers to the request.
9819func (c *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall) Header() http.Header {
9820	if c.header_ == nil {
9821		c.header_ = make(http.Header)
9822	}
9823	return c.header_
9824}
9825
9826func (c *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
9827	reqHeaders := make(http.Header)
9828	for k, v := range c.header_ {
9829		reqHeaders[k] = v
9830	}
9831	reqHeaders.Set("User-Agent", c.s.userAgent())
9832	if c.ifNoneMatch_ != "" {
9833		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
9834	}
9835	var body io.Reader = nil
9836	c.urlParams_.Set("alt", alt)
9837	c.urlParams_.Set("prettyPrint", "false")
9838	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:getIamPolicy")
9839	urls += "?" + c.urlParams_.Encode()
9840	req, err := http.NewRequest("GET", urls, body)
9841	if err != nil {
9842		return nil, err
9843	}
9844	req.Header = reqHeaders
9845	googleapi.Expand(req.URL, map[string]string{
9846		"resource": c.resource,
9847	})
9848	return gensupport.SendRequest(c.ctx_, c.s.client, req)
9849}
9850
9851// Do executes the "healthcare.projects.locations.datasets.fhirStores.getIamPolicy" call.
9852// Exactly one of *Policy or error will be non-nil. Any non-2xx status
9853// code is an error. Response headers are in either
9854// *Policy.ServerResponse.Header or (if a response was returned at all)
9855// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
9856// check whether the returned error was because http.StatusNotModified
9857// was returned.
9858func (c *ProjectsLocationsDatasetsFhirStoresGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
9859	gensupport.SetOptions(c.urlParams_, opts...)
9860	res, err := c.doRequest("json")
9861	if res != nil && res.StatusCode == http.StatusNotModified {
9862		if res.Body != nil {
9863			res.Body.Close()
9864		}
9865		return nil, &googleapi.Error{
9866			Code:   res.StatusCode,
9867			Header: res.Header,
9868		}
9869	}
9870	if err != nil {
9871		return nil, err
9872	}
9873	defer googleapi.CloseBody(res)
9874	if err := googleapi.CheckResponse(res); err != nil {
9875		return nil, err
9876	}
9877	ret := &Policy{
9878		ServerResponse: googleapi.ServerResponse{
9879			Header:         res.Header,
9880			HTTPStatusCode: res.StatusCode,
9881		},
9882	}
9883	target := &ret
9884	if err := gensupport.DecodeResponse(target, res); err != nil {
9885		return nil, err
9886	}
9887	return ret, nil
9888	// {
9889	//   "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
9890	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}:getIamPolicy",
9891	//   "httpMethod": "GET",
9892	//   "id": "healthcare.projects.locations.datasets.fhirStores.getIamPolicy",
9893	//   "parameterOrder": [
9894	//     "resource"
9895	//   ],
9896	//   "parameters": {
9897	//     "resource": {
9898	//       "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
9899	//       "location": "path",
9900	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
9901	//       "required": true,
9902	//       "type": "string"
9903	//     }
9904	//   },
9905	//   "path": "v1beta1/{+resource}:getIamPolicy",
9906	//   "response": {
9907	//     "$ref": "Policy"
9908	//   },
9909	//   "scopes": [
9910	//     "https://www.googleapis.com/auth/cloud-platform"
9911	//   ]
9912	// }
9913
9914}
9915
9916// method id "healthcare.projects.locations.datasets.fhirStores.import":
9917
9918type ProjectsLocationsDatasetsFhirStoresImportCall struct {
9919	s                      *Service
9920	name                   string
9921	importresourcesrequest *ImportResourcesRequest
9922	urlParams_             gensupport.URLParams
9923	ctx_                   context.Context
9924	header_                http.Header
9925}
9926
9927// Import: Import resources to the FHIR store by loading data from the
9928// specified
9929// sources. Each resource must have a client-supplied ID, which is
9930// retained
9931// by the server.
9932//
9933// The import operation is idempotent. Upon retry, the most recent
9934// data
9935// (matching the client-supplied ID) is overwritten, without creating a
9936// new
9937// resource version. If partial failures occur during the import,
9938// successful
9939// changes are not rolled back.
9940//
9941// If history imports are enabled
9942// (enable_history_import is set in the
9943// FHIR store's configuration), you can import historical versions of
9944// a
9945// resource by supplying a bundle of type `history`. The historical
9946// versions
9947// in the bundle must have `lastUpdated` timestamps. If a current
9948// or
9949// historical version with the supplied resource ID already exists,
9950// the
9951// bundle is rejected.
9952//
9953// This method returns an Operation that can
9954// be used to track the status of the import by
9955// calling
9956// GetOperation.
9957//
9958// Immediate fatal errors appear in the
9959// error field.
9960// Otherwise, when the operation finishes, a detailed response of
9961// type
9962// ImportResourcesResponse is returned in the
9963// response field.
9964// The metadata field type for this
9965// operation is OperationMetadata.
9966func (r *ProjectsLocationsDatasetsFhirStoresService) Import(name string, importresourcesrequest *ImportResourcesRequest) *ProjectsLocationsDatasetsFhirStoresImportCall {
9967	c := &ProjectsLocationsDatasetsFhirStoresImportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
9968	c.name = name
9969	c.importresourcesrequest = importresourcesrequest
9970	return c
9971}
9972
9973// Fields allows partial responses to be retrieved. See
9974// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
9975// for more information.
9976func (c *ProjectsLocationsDatasetsFhirStoresImportCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresImportCall {
9977	c.urlParams_.Set("fields", googleapi.CombineFields(s))
9978	return c
9979}
9980
9981// Context sets the context to be used in this call's Do method. Any
9982// pending HTTP request will be aborted if the provided context is
9983// canceled.
9984func (c *ProjectsLocationsDatasetsFhirStoresImportCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresImportCall {
9985	c.ctx_ = ctx
9986	return c
9987}
9988
9989// Header returns an http.Header that can be modified by the caller to
9990// add HTTP headers to the request.
9991func (c *ProjectsLocationsDatasetsFhirStoresImportCall) Header() http.Header {
9992	if c.header_ == nil {
9993		c.header_ = make(http.Header)
9994	}
9995	return c.header_
9996}
9997
9998func (c *ProjectsLocationsDatasetsFhirStoresImportCall) doRequest(alt string) (*http.Response, error) {
9999	reqHeaders := make(http.Header)
10000	for k, v := range c.header_ {
10001		reqHeaders[k] = v
10002	}
10003	reqHeaders.Set("User-Agent", c.s.userAgent())
10004	var body io.Reader = nil
10005	body, err := googleapi.WithoutDataWrapper.JSONReader(c.importresourcesrequest)
10006	if err != nil {
10007		return nil, err
10008	}
10009	reqHeaders.Set("Content-Type", "application/json")
10010	c.urlParams_.Set("alt", alt)
10011	c.urlParams_.Set("prettyPrint", "false")
10012	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:import")
10013	urls += "?" + c.urlParams_.Encode()
10014	req, err := http.NewRequest("POST", urls, body)
10015	if err != nil {
10016		return nil, err
10017	}
10018	req.Header = reqHeaders
10019	googleapi.Expand(req.URL, map[string]string{
10020		"name": c.name,
10021	})
10022	return gensupport.SendRequest(c.ctx_, c.s.client, req)
10023}
10024
10025// Do executes the "healthcare.projects.locations.datasets.fhirStores.import" call.
10026// Exactly one of *Operation or error will be non-nil. Any non-2xx
10027// status code is an error. Response headers are in either
10028// *Operation.ServerResponse.Header or (if a response was returned at
10029// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
10030// to check whether the returned error was because
10031// http.StatusNotModified was returned.
10032func (c *ProjectsLocationsDatasetsFhirStoresImportCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
10033	gensupport.SetOptions(c.urlParams_, opts...)
10034	res, err := c.doRequest("json")
10035	if res != nil && res.StatusCode == http.StatusNotModified {
10036		if res.Body != nil {
10037			res.Body.Close()
10038		}
10039		return nil, &googleapi.Error{
10040			Code:   res.StatusCode,
10041			Header: res.Header,
10042		}
10043	}
10044	if err != nil {
10045		return nil, err
10046	}
10047	defer googleapi.CloseBody(res)
10048	if err := googleapi.CheckResponse(res); err != nil {
10049		return nil, err
10050	}
10051	ret := &Operation{
10052		ServerResponse: googleapi.ServerResponse{
10053			Header:         res.Header,
10054			HTTPStatusCode: res.StatusCode,
10055		},
10056	}
10057	target := &ret
10058	if err := gensupport.DecodeResponse(target, res); err != nil {
10059		return nil, err
10060	}
10061	return ret, nil
10062	// {
10063	//   "description": "Import resources to the FHIR store by loading data from the specified\nsources. Each resource must have a client-supplied ID, which is retained\nby the server.\n\nThe import operation is idempotent. Upon retry, the most recent data\n(matching the client-supplied ID) is overwritten, without creating a new\nresource version. If partial failures occur during the import, successful\nchanges are not rolled back.\n\nIf history imports are enabled\n(enable_history_import is set in the\nFHIR store's configuration), you can import historical versions of a\nresource by supplying a bundle of type `history`. The historical versions\nin the bundle must have `lastUpdated` timestamps. If a current or\nhistorical version with the supplied resource ID already exists, the\nbundle is rejected.\n\nThis method returns an Operation that can\nbe used to track the status of the import by calling\nGetOperation.\n\nImmediate fatal errors appear in the\nerror field.\nOtherwise, when the operation finishes, a detailed response of type\nImportResourcesResponse is returned in the\nresponse field.\nThe metadata field type for this\noperation is OperationMetadata.",
10064	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}:import",
10065	//   "httpMethod": "POST",
10066	//   "id": "healthcare.projects.locations.datasets.fhirStores.import",
10067	//   "parameterOrder": [
10068	//     "name"
10069	//   ],
10070	//   "parameters": {
10071	//     "name": {
10072	//       "description": "The name of the FHIR store to import FHIR resources to. The name should be\nin the format of\n`projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/fhirStores/{fhir_store_id}`.",
10073	//       "location": "path",
10074	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
10075	//       "required": true,
10076	//       "type": "string"
10077	//     }
10078	//   },
10079	//   "path": "v1beta1/{+name}:import",
10080	//   "request": {
10081	//     "$ref": "ImportResourcesRequest"
10082	//   },
10083	//   "response": {
10084	//     "$ref": "Operation"
10085	//   },
10086	//   "scopes": [
10087	//     "https://www.googleapis.com/auth/cloud-platform"
10088	//   ]
10089	// }
10090
10091}
10092
10093// method id "healthcare.projects.locations.datasets.fhirStores.list":
10094
10095type ProjectsLocationsDatasetsFhirStoresListCall struct {
10096	s            *Service
10097	parent       string
10098	urlParams_   gensupport.URLParams
10099	ifNoneMatch_ string
10100	ctx_         context.Context
10101	header_      http.Header
10102}
10103
10104// List: Lists the FHIR stores in the given dataset.
10105func (r *ProjectsLocationsDatasetsFhirStoresService) List(parent string) *ProjectsLocationsDatasetsFhirStoresListCall {
10106	c := &ProjectsLocationsDatasetsFhirStoresListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
10107	c.parent = parent
10108	return c
10109}
10110
10111// Filter sets the optional parameter "filter": Restricts stores
10112// returned to those matching a filter.
10113// Syntax:
10114// https://cloud.google.com/appengine/docs/standard/python/search
10115// /query_strings
10116// Only filtering on labels is supported, for example
10117// `labels.key=value`.
10118func (c *ProjectsLocationsDatasetsFhirStoresListCall) Filter(filter string) *ProjectsLocationsDatasetsFhirStoresListCall {
10119	c.urlParams_.Set("filter", filter)
10120	return c
10121}
10122
10123// PageSize sets the optional parameter "pageSize": Limit on the number
10124// of FHIR stores to return in a single response.  If zero
10125// the default page size of 100 is used.
10126func (c *ProjectsLocationsDatasetsFhirStoresListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsFhirStoresListCall {
10127	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
10128	return c
10129}
10130
10131// PageToken sets the optional parameter "pageToken": The
10132// next_page_token value returned from the previous List request, if
10133// any.
10134func (c *ProjectsLocationsDatasetsFhirStoresListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsFhirStoresListCall {
10135	c.urlParams_.Set("pageToken", pageToken)
10136	return c
10137}
10138
10139// Fields allows partial responses to be retrieved. See
10140// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
10141// for more information.
10142func (c *ProjectsLocationsDatasetsFhirStoresListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresListCall {
10143	c.urlParams_.Set("fields", googleapi.CombineFields(s))
10144	return c
10145}
10146
10147// IfNoneMatch sets the optional parameter which makes the operation
10148// fail if the object's ETag matches the given value. This is useful for
10149// getting updates only after the object has changed since the last
10150// request. Use googleapi.IsNotModified to check whether the response
10151// error from Do is the result of In-None-Match.
10152func (c *ProjectsLocationsDatasetsFhirStoresListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresListCall {
10153	c.ifNoneMatch_ = entityTag
10154	return c
10155}
10156
10157// Context sets the context to be used in this call's Do method. Any
10158// pending HTTP request will be aborted if the provided context is
10159// canceled.
10160func (c *ProjectsLocationsDatasetsFhirStoresListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresListCall {
10161	c.ctx_ = ctx
10162	return c
10163}
10164
10165// Header returns an http.Header that can be modified by the caller to
10166// add HTTP headers to the request.
10167func (c *ProjectsLocationsDatasetsFhirStoresListCall) Header() http.Header {
10168	if c.header_ == nil {
10169		c.header_ = make(http.Header)
10170	}
10171	return c.header_
10172}
10173
10174func (c *ProjectsLocationsDatasetsFhirStoresListCall) doRequest(alt string) (*http.Response, error) {
10175	reqHeaders := make(http.Header)
10176	for k, v := range c.header_ {
10177		reqHeaders[k] = v
10178	}
10179	reqHeaders.Set("User-Agent", c.s.userAgent())
10180	if c.ifNoneMatch_ != "" {
10181		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
10182	}
10183	var body io.Reader = nil
10184	c.urlParams_.Set("alt", alt)
10185	c.urlParams_.Set("prettyPrint", "false")
10186	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/fhirStores")
10187	urls += "?" + c.urlParams_.Encode()
10188	req, err := http.NewRequest("GET", urls, body)
10189	if err != nil {
10190		return nil, err
10191	}
10192	req.Header = reqHeaders
10193	googleapi.Expand(req.URL, map[string]string{
10194		"parent": c.parent,
10195	})
10196	return gensupport.SendRequest(c.ctx_, c.s.client, req)
10197}
10198
10199// Do executes the "healthcare.projects.locations.datasets.fhirStores.list" call.
10200// Exactly one of *ListFhirStoresResponse or error will be non-nil. Any
10201// non-2xx status code is an error. Response headers are in either
10202// *ListFhirStoresResponse.ServerResponse.Header or (if a response was
10203// returned at all) in error.(*googleapi.Error).Header. Use
10204// googleapi.IsNotModified to check whether the returned error was
10205// because http.StatusNotModified was returned.
10206func (c *ProjectsLocationsDatasetsFhirStoresListCall) Do(opts ...googleapi.CallOption) (*ListFhirStoresResponse, error) {
10207	gensupport.SetOptions(c.urlParams_, opts...)
10208	res, err := c.doRequest("json")
10209	if res != nil && res.StatusCode == http.StatusNotModified {
10210		if res.Body != nil {
10211			res.Body.Close()
10212		}
10213		return nil, &googleapi.Error{
10214			Code:   res.StatusCode,
10215			Header: res.Header,
10216		}
10217	}
10218	if err != nil {
10219		return nil, err
10220	}
10221	defer googleapi.CloseBody(res)
10222	if err := googleapi.CheckResponse(res); err != nil {
10223		return nil, err
10224	}
10225	ret := &ListFhirStoresResponse{
10226		ServerResponse: googleapi.ServerResponse{
10227			Header:         res.Header,
10228			HTTPStatusCode: res.StatusCode,
10229		},
10230	}
10231	target := &ret
10232	if err := gensupport.DecodeResponse(target, res); err != nil {
10233		return nil, err
10234	}
10235	return ret, nil
10236	// {
10237	//   "description": "Lists the FHIR stores in the given dataset.",
10238	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores",
10239	//   "httpMethod": "GET",
10240	//   "id": "healthcare.projects.locations.datasets.fhirStores.list",
10241	//   "parameterOrder": [
10242	//     "parent"
10243	//   ],
10244	//   "parameters": {
10245	//     "filter": {
10246	//       "description": "Restricts stores returned to those matching a filter. Syntax:\nhttps://cloud.google.com/appengine/docs/standard/python/search/query_strings\nOnly filtering on labels is supported, for example `labels.key=value`.",
10247	//       "location": "query",
10248	//       "type": "string"
10249	//     },
10250	//     "pageSize": {
10251	//       "description": "Limit on the number of FHIR stores to return in a single response.  If zero\nthe default page size of 100 is used.",
10252	//       "format": "int32",
10253	//       "location": "query",
10254	//       "type": "integer"
10255	//     },
10256	//     "pageToken": {
10257	//       "description": "The next_page_token value returned from the previous List request, if any.",
10258	//       "location": "query",
10259	//       "type": "string"
10260	//     },
10261	//     "parent": {
10262	//       "description": "Name of the dataset.",
10263	//       "location": "path",
10264	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
10265	//       "required": true,
10266	//       "type": "string"
10267	//     }
10268	//   },
10269	//   "path": "v1beta1/{+parent}/fhirStores",
10270	//   "response": {
10271	//     "$ref": "ListFhirStoresResponse"
10272	//   },
10273	//   "scopes": [
10274	//     "https://www.googleapis.com/auth/cloud-platform"
10275	//   ]
10276	// }
10277
10278}
10279
10280// Pages invokes f for each page of results.
10281// A non-nil error returned from f will halt the iteration.
10282// The provided context supersedes any context provided to the Context method.
10283func (c *ProjectsLocationsDatasetsFhirStoresListCall) Pages(ctx context.Context, f func(*ListFhirStoresResponse) error) error {
10284	c.ctx_ = ctx
10285	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
10286	for {
10287		x, err := c.Do()
10288		if err != nil {
10289			return err
10290		}
10291		if err := f(x); err != nil {
10292			return err
10293		}
10294		if x.NextPageToken == "" {
10295			return nil
10296		}
10297		c.PageToken(x.NextPageToken)
10298	}
10299}
10300
10301// method id "healthcare.projects.locations.datasets.fhirStores.patch":
10302
10303type ProjectsLocationsDatasetsFhirStoresPatchCall struct {
10304	s          *Service
10305	name       string
10306	fhirstore  *FhirStore
10307	urlParams_ gensupport.URLParams
10308	ctx_       context.Context
10309	header_    http.Header
10310}
10311
10312// Patch: Updates the configuration of the specified FHIR store.
10313func (r *ProjectsLocationsDatasetsFhirStoresService) Patch(name string, fhirstore *FhirStore) *ProjectsLocationsDatasetsFhirStoresPatchCall {
10314	c := &ProjectsLocationsDatasetsFhirStoresPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
10315	c.name = name
10316	c.fhirstore = fhirstore
10317	return c
10318}
10319
10320// UpdateMask sets the optional parameter "updateMask": The update mask
10321// applies to the resource. For the `FieldMask`
10322// definition,
10323// see
10324// https://developers.google.com/protocol-buffers/docs/re
10325// ference/google.protobuf#fieldmask
10326func (c *ProjectsLocationsDatasetsFhirStoresPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDatasetsFhirStoresPatchCall {
10327	c.urlParams_.Set("updateMask", updateMask)
10328	return c
10329}
10330
10331// Fields allows partial responses to be retrieved. See
10332// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
10333// for more information.
10334func (c *ProjectsLocationsDatasetsFhirStoresPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresPatchCall {
10335	c.urlParams_.Set("fields", googleapi.CombineFields(s))
10336	return c
10337}
10338
10339// Context sets the context to be used in this call's Do method. Any
10340// pending HTTP request will be aborted if the provided context is
10341// canceled.
10342func (c *ProjectsLocationsDatasetsFhirStoresPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresPatchCall {
10343	c.ctx_ = ctx
10344	return c
10345}
10346
10347// Header returns an http.Header that can be modified by the caller to
10348// add HTTP headers to the request.
10349func (c *ProjectsLocationsDatasetsFhirStoresPatchCall) Header() http.Header {
10350	if c.header_ == nil {
10351		c.header_ = make(http.Header)
10352	}
10353	return c.header_
10354}
10355
10356func (c *ProjectsLocationsDatasetsFhirStoresPatchCall) doRequest(alt string) (*http.Response, error) {
10357	reqHeaders := make(http.Header)
10358	for k, v := range c.header_ {
10359		reqHeaders[k] = v
10360	}
10361	reqHeaders.Set("User-Agent", c.s.userAgent())
10362	var body io.Reader = nil
10363	body, err := googleapi.WithoutDataWrapper.JSONReader(c.fhirstore)
10364	if err != nil {
10365		return nil, err
10366	}
10367	reqHeaders.Set("Content-Type", "application/json")
10368	c.urlParams_.Set("alt", alt)
10369	c.urlParams_.Set("prettyPrint", "false")
10370	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
10371	urls += "?" + c.urlParams_.Encode()
10372	req, err := http.NewRequest("PATCH", urls, body)
10373	if err != nil {
10374		return nil, err
10375	}
10376	req.Header = reqHeaders
10377	googleapi.Expand(req.URL, map[string]string{
10378		"name": c.name,
10379	})
10380	return gensupport.SendRequest(c.ctx_, c.s.client, req)
10381}
10382
10383// Do executes the "healthcare.projects.locations.datasets.fhirStores.patch" call.
10384// Exactly one of *FhirStore or error will be non-nil. Any non-2xx
10385// status code is an error. Response headers are in either
10386// *FhirStore.ServerResponse.Header or (if a response was returned at
10387// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
10388// to check whether the returned error was because
10389// http.StatusNotModified was returned.
10390func (c *ProjectsLocationsDatasetsFhirStoresPatchCall) Do(opts ...googleapi.CallOption) (*FhirStore, error) {
10391	gensupport.SetOptions(c.urlParams_, opts...)
10392	res, err := c.doRequest("json")
10393	if res != nil && res.StatusCode == http.StatusNotModified {
10394		if res.Body != nil {
10395			res.Body.Close()
10396		}
10397		return nil, &googleapi.Error{
10398			Code:   res.StatusCode,
10399			Header: res.Header,
10400		}
10401	}
10402	if err != nil {
10403		return nil, err
10404	}
10405	defer googleapi.CloseBody(res)
10406	if err := googleapi.CheckResponse(res); err != nil {
10407		return nil, err
10408	}
10409	ret := &FhirStore{
10410		ServerResponse: googleapi.ServerResponse{
10411			Header:         res.Header,
10412			HTTPStatusCode: res.StatusCode,
10413		},
10414	}
10415	target := &ret
10416	if err := gensupport.DecodeResponse(target, res); err != nil {
10417		return nil, err
10418	}
10419	return ret, nil
10420	// {
10421	//   "description": "Updates the configuration of the specified FHIR store.",
10422	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}",
10423	//   "httpMethod": "PATCH",
10424	//   "id": "healthcare.projects.locations.datasets.fhirStores.patch",
10425	//   "parameterOrder": [
10426	//     "name"
10427	//   ],
10428	//   "parameters": {
10429	//     "name": {
10430	//       "description": "Output only. Resource name of the FHIR store, of the form\n`projects/{project_id}/datasets/{dataset_id}/fhirStores/{fhir_store_id}`.",
10431	//       "location": "path",
10432	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
10433	//       "required": true,
10434	//       "type": "string"
10435	//     },
10436	//     "updateMask": {
10437	//       "description": "The update mask applies to the resource. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask",
10438	//       "format": "google-fieldmask",
10439	//       "location": "query",
10440	//       "type": "string"
10441	//     }
10442	//   },
10443	//   "path": "v1beta1/{+name}",
10444	//   "request": {
10445	//     "$ref": "FhirStore"
10446	//   },
10447	//   "response": {
10448	//     "$ref": "FhirStore"
10449	//   },
10450	//   "scopes": [
10451	//     "https://www.googleapis.com/auth/cloud-platform"
10452	//   ]
10453	// }
10454
10455}
10456
10457// method id "healthcare.projects.locations.datasets.fhirStores.setIamPolicy":
10458
10459type ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall struct {
10460	s                   *Service
10461	resource            string
10462	setiampolicyrequest *SetIamPolicyRequest
10463	urlParams_          gensupport.URLParams
10464	ctx_                context.Context
10465	header_             http.Header
10466}
10467
10468// SetIamPolicy: Sets the access control policy on the specified
10469// resource. Replaces any
10470// existing policy.
10471func (r *ProjectsLocationsDatasetsFhirStoresService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall {
10472	c := &ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
10473	c.resource = resource
10474	c.setiampolicyrequest = setiampolicyrequest
10475	return c
10476}
10477
10478// Fields allows partial responses to be retrieved. See
10479// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
10480// for more information.
10481func (c *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall {
10482	c.urlParams_.Set("fields", googleapi.CombineFields(s))
10483	return c
10484}
10485
10486// Context sets the context to be used in this call's Do method. Any
10487// pending HTTP request will be aborted if the provided context is
10488// canceled.
10489func (c *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall {
10490	c.ctx_ = ctx
10491	return c
10492}
10493
10494// Header returns an http.Header that can be modified by the caller to
10495// add HTTP headers to the request.
10496func (c *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall) Header() http.Header {
10497	if c.header_ == nil {
10498		c.header_ = make(http.Header)
10499	}
10500	return c.header_
10501}
10502
10503func (c *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
10504	reqHeaders := make(http.Header)
10505	for k, v := range c.header_ {
10506		reqHeaders[k] = v
10507	}
10508	reqHeaders.Set("User-Agent", c.s.userAgent())
10509	var body io.Reader = nil
10510	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest)
10511	if err != nil {
10512		return nil, err
10513	}
10514	reqHeaders.Set("Content-Type", "application/json")
10515	c.urlParams_.Set("alt", alt)
10516	c.urlParams_.Set("prettyPrint", "false")
10517	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:setIamPolicy")
10518	urls += "?" + c.urlParams_.Encode()
10519	req, err := http.NewRequest("POST", urls, body)
10520	if err != nil {
10521		return nil, err
10522	}
10523	req.Header = reqHeaders
10524	googleapi.Expand(req.URL, map[string]string{
10525		"resource": c.resource,
10526	})
10527	return gensupport.SendRequest(c.ctx_, c.s.client, req)
10528}
10529
10530// Do executes the "healthcare.projects.locations.datasets.fhirStores.setIamPolicy" call.
10531// Exactly one of *Policy or error will be non-nil. Any non-2xx status
10532// code is an error. Response headers are in either
10533// *Policy.ServerResponse.Header or (if a response was returned at all)
10534// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
10535// check whether the returned error was because http.StatusNotModified
10536// was returned.
10537func (c *ProjectsLocationsDatasetsFhirStoresSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
10538	gensupport.SetOptions(c.urlParams_, opts...)
10539	res, err := c.doRequest("json")
10540	if res != nil && res.StatusCode == http.StatusNotModified {
10541		if res.Body != nil {
10542			res.Body.Close()
10543		}
10544		return nil, &googleapi.Error{
10545			Code:   res.StatusCode,
10546			Header: res.Header,
10547		}
10548	}
10549	if err != nil {
10550		return nil, err
10551	}
10552	defer googleapi.CloseBody(res)
10553	if err := googleapi.CheckResponse(res); err != nil {
10554		return nil, err
10555	}
10556	ret := &Policy{
10557		ServerResponse: googleapi.ServerResponse{
10558			Header:         res.Header,
10559			HTTPStatusCode: res.StatusCode,
10560		},
10561	}
10562	target := &ret
10563	if err := gensupport.DecodeResponse(target, res); err != nil {
10564		return nil, err
10565	}
10566	return ret, nil
10567	// {
10568	//   "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
10569	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}:setIamPolicy",
10570	//   "httpMethod": "POST",
10571	//   "id": "healthcare.projects.locations.datasets.fhirStores.setIamPolicy",
10572	//   "parameterOrder": [
10573	//     "resource"
10574	//   ],
10575	//   "parameters": {
10576	//     "resource": {
10577	//       "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
10578	//       "location": "path",
10579	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
10580	//       "required": true,
10581	//       "type": "string"
10582	//     }
10583	//   },
10584	//   "path": "v1beta1/{+resource}:setIamPolicy",
10585	//   "request": {
10586	//     "$ref": "SetIamPolicyRequest"
10587	//   },
10588	//   "response": {
10589	//     "$ref": "Policy"
10590	//   },
10591	//   "scopes": [
10592	//     "https://www.googleapis.com/auth/cloud-platform"
10593	//   ]
10594	// }
10595
10596}
10597
10598// method id "healthcare.projects.locations.datasets.fhirStores.testIamPermissions":
10599
10600type ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall struct {
10601	s                         *Service
10602	resource                  string
10603	testiampermissionsrequest *TestIamPermissionsRequest
10604	urlParams_                gensupport.URLParams
10605	ctx_                      context.Context
10606	header_                   http.Header
10607}
10608
10609// TestIamPermissions: Returns permissions that a caller has on the
10610// specified resource.
10611// If the resource does not exist, this will return an empty set
10612// of
10613// permissions, not a NOT_FOUND error.
10614//
10615// Note: This operation is designed to be used for building
10616// permission-aware
10617// UIs and command-line tools, not for authorization checking. This
10618// operation
10619// may "fail open" without warning.
10620func (r *ProjectsLocationsDatasetsFhirStoresService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall {
10621	c := &ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
10622	c.resource = resource
10623	c.testiampermissionsrequest = testiampermissionsrequest
10624	return c
10625}
10626
10627// Fields allows partial responses to be retrieved. See
10628// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
10629// for more information.
10630func (c *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall {
10631	c.urlParams_.Set("fields", googleapi.CombineFields(s))
10632	return c
10633}
10634
10635// Context sets the context to be used in this call's Do method. Any
10636// pending HTTP request will be aborted if the provided context is
10637// canceled.
10638func (c *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall {
10639	c.ctx_ = ctx
10640	return c
10641}
10642
10643// Header returns an http.Header that can be modified by the caller to
10644// add HTTP headers to the request.
10645func (c *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall) Header() http.Header {
10646	if c.header_ == nil {
10647		c.header_ = make(http.Header)
10648	}
10649	return c.header_
10650}
10651
10652func (c *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
10653	reqHeaders := make(http.Header)
10654	for k, v := range c.header_ {
10655		reqHeaders[k] = v
10656	}
10657	reqHeaders.Set("User-Agent", c.s.userAgent())
10658	var body io.Reader = nil
10659	body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest)
10660	if err != nil {
10661		return nil, err
10662	}
10663	reqHeaders.Set("Content-Type", "application/json")
10664	c.urlParams_.Set("alt", alt)
10665	c.urlParams_.Set("prettyPrint", "false")
10666	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:testIamPermissions")
10667	urls += "?" + c.urlParams_.Encode()
10668	req, err := http.NewRequest("POST", urls, body)
10669	if err != nil {
10670		return nil, err
10671	}
10672	req.Header = reqHeaders
10673	googleapi.Expand(req.URL, map[string]string{
10674		"resource": c.resource,
10675	})
10676	return gensupport.SendRequest(c.ctx_, c.s.client, req)
10677}
10678
10679// Do executes the "healthcare.projects.locations.datasets.fhirStores.testIamPermissions" call.
10680// Exactly one of *TestIamPermissionsResponse or error will be non-nil.
10681// Any non-2xx status code is an error. Response headers are in either
10682// *TestIamPermissionsResponse.ServerResponse.Header or (if a response
10683// was returned at all) in error.(*googleapi.Error).Header. Use
10684// googleapi.IsNotModified to check whether the returned error was
10685// because http.StatusNotModified was returned.
10686func (c *ProjectsLocationsDatasetsFhirStoresTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) {
10687	gensupport.SetOptions(c.urlParams_, opts...)
10688	res, err := c.doRequest("json")
10689	if res != nil && res.StatusCode == http.StatusNotModified {
10690		if res.Body != nil {
10691			res.Body.Close()
10692		}
10693		return nil, &googleapi.Error{
10694			Code:   res.StatusCode,
10695			Header: res.Header,
10696		}
10697	}
10698	if err != nil {
10699		return nil, err
10700	}
10701	defer googleapi.CloseBody(res)
10702	if err := googleapi.CheckResponse(res); err != nil {
10703		return nil, err
10704	}
10705	ret := &TestIamPermissionsResponse{
10706		ServerResponse: googleapi.ServerResponse{
10707			Header:         res.Header,
10708			HTTPStatusCode: res.StatusCode,
10709		},
10710	}
10711	target := &ret
10712	if err := gensupport.DecodeResponse(target, res); err != nil {
10713		return nil, err
10714	}
10715	return ret, nil
10716	// {
10717	//   "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
10718	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}:testIamPermissions",
10719	//   "httpMethod": "POST",
10720	//   "id": "healthcare.projects.locations.datasets.fhirStores.testIamPermissions",
10721	//   "parameterOrder": [
10722	//     "resource"
10723	//   ],
10724	//   "parameters": {
10725	//     "resource": {
10726	//       "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
10727	//       "location": "path",
10728	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
10729	//       "required": true,
10730	//       "type": "string"
10731	//     }
10732	//   },
10733	//   "path": "v1beta1/{+resource}:testIamPermissions",
10734	//   "request": {
10735	//     "$ref": "TestIamPermissionsRequest"
10736	//   },
10737	//   "response": {
10738	//     "$ref": "TestIamPermissionsResponse"
10739	//   },
10740	//   "scopes": [
10741	//     "https://www.googleapis.com/auth/cloud-platform"
10742	//   ]
10743	// }
10744
10745}
10746
10747// method id "healthcare.projects.locations.datasets.fhirStores.fhir.Observation-lastn":
10748
10749type ProjectsLocationsDatasetsFhirStoresFhirObservationLastnCall struct {
10750	s            *Service
10751	parent       string
10752	urlParams_   gensupport.URLParams
10753	ifNoneMatch_ string
10754	ctx_         context.Context
10755	header_      http.Header
10756}
10757
10758// ObservationLastn: Retrieves the N most recent `Observation` resources
10759// for a subject matching
10760// search criteria specified as query parameters, grouped
10761// by
10762// `Observation.code`, sorted from most recent to oldest.
10763//
10764// Implements the FHIR extended
10765// operation
10766// [Observation-lastn](http://hl7.org/implement/standards/fhir/
10767// STU3/observation-operations.html#lastn).
10768//
10769// Search terms are provided as query parameters following the same
10770// pattern as
10771// the search method. This operation accepts an additional
10772// query parameter `max`, which specifies N, the maximum number
10773// of
10774// Observations to return from each group, with a default of 1.
10775//
10776// On success, the response body will contain a JSON-encoded
10777// representation
10778// of a `Bundle` resource of type `searchset`, containing the results of
10779// the
10780// operation.
10781// Errors generated by the FHIR store will contain a
10782// JSON-encoded
10783// `OperationOutcome` resource describing the reason for the error. If
10784// the
10785// request cannot be mapped to a valid API method on a FHIR store, a
10786// generic
10787// GCP error might be returned instead.
10788func (r *ProjectsLocationsDatasetsFhirStoresFhirService) ObservationLastn(parent string) *ProjectsLocationsDatasetsFhirStoresFhirObservationLastnCall {
10789	c := &ProjectsLocationsDatasetsFhirStoresFhirObservationLastnCall{s: r.s, urlParams_: make(gensupport.URLParams)}
10790	c.parent = parent
10791	return c
10792}
10793
10794// Fields allows partial responses to be retrieved. See
10795// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
10796// for more information.
10797func (c *ProjectsLocationsDatasetsFhirStoresFhirObservationLastnCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirObservationLastnCall {
10798	c.urlParams_.Set("fields", googleapi.CombineFields(s))
10799	return c
10800}
10801
10802// IfNoneMatch sets the optional parameter which makes the operation
10803// fail if the object's ETag matches the given value. This is useful for
10804// getting updates only after the object has changed since the last
10805// request. Use googleapi.IsNotModified to check whether the response
10806// error from Do is the result of In-None-Match.
10807func (c *ProjectsLocationsDatasetsFhirStoresFhirObservationLastnCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresFhirObservationLastnCall {
10808	c.ifNoneMatch_ = entityTag
10809	return c
10810}
10811
10812// Context sets the context to be used in this call's Do method. Any
10813// pending HTTP request will be aborted if the provided context is
10814// canceled.
10815func (c *ProjectsLocationsDatasetsFhirStoresFhirObservationLastnCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirObservationLastnCall {
10816	c.ctx_ = ctx
10817	return c
10818}
10819
10820// Header returns an http.Header that can be modified by the caller to
10821// add HTTP headers to the request.
10822func (c *ProjectsLocationsDatasetsFhirStoresFhirObservationLastnCall) Header() http.Header {
10823	if c.header_ == nil {
10824		c.header_ = make(http.Header)
10825	}
10826	return c.header_
10827}
10828
10829func (c *ProjectsLocationsDatasetsFhirStoresFhirObservationLastnCall) doRequest(alt string) (*http.Response, error) {
10830	reqHeaders := make(http.Header)
10831	for k, v := range c.header_ {
10832		reqHeaders[k] = v
10833	}
10834	reqHeaders.Set("User-Agent", c.s.userAgent())
10835	if c.ifNoneMatch_ != "" {
10836		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
10837	}
10838	var body io.Reader = nil
10839	c.urlParams_.Set("alt", alt)
10840	c.urlParams_.Set("prettyPrint", "false")
10841	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/fhir/Observation/$lastn")
10842	urls += "?" + c.urlParams_.Encode()
10843	req, err := http.NewRequest("GET", urls, body)
10844	if err != nil {
10845		return nil, err
10846	}
10847	req.Header = reqHeaders
10848	googleapi.Expand(req.URL, map[string]string{
10849		"parent": c.parent,
10850	})
10851	return gensupport.SendRequest(c.ctx_, c.s.client, req)
10852}
10853
10854// Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.Observation-lastn" call.
10855func (c *ProjectsLocationsDatasetsFhirStoresFhirObservationLastnCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
10856	gensupport.SetOptions(c.urlParams_, opts...)
10857	return c.doRequest("")
10858	// {
10859	//   "description": "Retrieves the N most recent `Observation` resources for a subject matching\nsearch criteria specified as query parameters, grouped by\n`Observation.code`, sorted from most recent to oldest.\n\nImplements the FHIR extended operation\n[Observation-lastn](http://hl7.org/implement/standards/fhir/STU3/observation-operations.html#lastn).\n\nSearch terms are provided as query parameters following the same pattern as\nthe search method. This operation accepts an additional\nquery parameter `max`, which specifies N, the maximum number of\nObservations to return from each group, with a default of 1.\n\nOn success, the response body will contain a JSON-encoded representation\nof a `Bundle` resource of type `searchset`, containing the results of the\noperation.\nErrors generated by the FHIR store will contain a JSON-encoded\n`OperationOutcome` resource describing the reason for the error. If the\nrequest cannot be mapped to a valid API method on a FHIR store, a generic\nGCP error might be returned instead.",
10860	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/fhir/Observation/$lastn",
10861	//   "httpMethod": "GET",
10862	//   "id": "healthcare.projects.locations.datasets.fhirStores.fhir.Observation-lastn",
10863	//   "parameterOrder": [
10864	//     "parent"
10865	//   ],
10866	//   "parameters": {
10867	//     "parent": {
10868	//       "description": "Name of the FHIR store to retrieve resources from.",
10869	//       "location": "path",
10870	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
10871	//       "required": true,
10872	//       "type": "string"
10873	//     }
10874	//   },
10875	//   "path": "v1beta1/{+parent}/fhir/Observation/$lastn",
10876	//   "response": {
10877	//     "$ref": "HttpBody"
10878	//   },
10879	//   "scopes": [
10880	//     "https://www.googleapis.com/auth/cloud-platform"
10881	//   ]
10882	// }
10883
10884}
10885
10886// method id "healthcare.projects.locations.datasets.fhirStores.fhir.Patient-everything":
10887
10888type ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall struct {
10889	s            *Service
10890	name         string
10891	urlParams_   gensupport.URLParams
10892	ifNoneMatch_ string
10893	ctx_         context.Context
10894	header_      http.Header
10895}
10896
10897// PatientEverything: Retrieves all the resources in the patient
10898// compartment for a `Patient`
10899// resource.
10900//
10901// Implements the FHIR extended
10902// operation
10903// [Patient-everything](http://hl7.org/implement/standards/fhir
10904// /STU3/patient-operations.html#everything).
10905//
10906// On success, the response body will contain a JSON-encoded
10907// representation
10908// of a `Bundle` resource of type `searchset`, containing the results of
10909// the
10910// operation.
10911// Errors generated by the FHIR store will contain a
10912// JSON-encoded
10913// `OperationOutcome` resource describing the reason for the error. If
10914// the
10915// request cannot be mapped to a valid API method on a FHIR store, a
10916// generic
10917// GCP error might be returned instead.
10918func (r *ProjectsLocationsDatasetsFhirStoresFhirService) PatientEverything(name string) *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall {
10919	c := &ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall{s: r.s, urlParams_: make(gensupport.URLParams)}
10920	c.name = name
10921	return c
10922}
10923
10924// End sets the optional parameter "end": The response includes records
10925// prior to the end date. If no end date is
10926// provided, all records subsequent to the start date are in scope.
10927func (c *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall) End(end string) *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall {
10928	c.urlParams_.Set("end", end)
10929	return c
10930}
10931
10932// Start sets the optional parameter "start": The response includes
10933// records subsequent to the start date. If no start
10934// date is provided, all records prior to the end date are in scope.
10935func (c *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall) Start(start string) *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall {
10936	c.urlParams_.Set("start", start)
10937	return c
10938}
10939
10940// Fields allows partial responses to be retrieved. See
10941// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
10942// for more information.
10943func (c *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall {
10944	c.urlParams_.Set("fields", googleapi.CombineFields(s))
10945	return c
10946}
10947
10948// IfNoneMatch sets the optional parameter which makes the operation
10949// fail if the object's ETag matches the given value. This is useful for
10950// getting updates only after the object has changed since the last
10951// request. Use googleapi.IsNotModified to check whether the response
10952// error from Do is the result of In-None-Match.
10953func (c *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall {
10954	c.ifNoneMatch_ = entityTag
10955	return c
10956}
10957
10958// Context sets the context to be used in this call's Do method. Any
10959// pending HTTP request will be aborted if the provided context is
10960// canceled.
10961func (c *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall {
10962	c.ctx_ = ctx
10963	return c
10964}
10965
10966// Header returns an http.Header that can be modified by the caller to
10967// add HTTP headers to the request.
10968func (c *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall) Header() http.Header {
10969	if c.header_ == nil {
10970		c.header_ = make(http.Header)
10971	}
10972	return c.header_
10973}
10974
10975func (c *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall) doRequest(alt string) (*http.Response, error) {
10976	reqHeaders := make(http.Header)
10977	for k, v := range c.header_ {
10978		reqHeaders[k] = v
10979	}
10980	reqHeaders.Set("User-Agent", c.s.userAgent())
10981	if c.ifNoneMatch_ != "" {
10982		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
10983	}
10984	var body io.Reader = nil
10985	c.urlParams_.Set("alt", alt)
10986	c.urlParams_.Set("prettyPrint", "false")
10987	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}/$everything")
10988	urls += "?" + c.urlParams_.Encode()
10989	req, err := http.NewRequest("GET", urls, body)
10990	if err != nil {
10991		return nil, err
10992	}
10993	req.Header = reqHeaders
10994	googleapi.Expand(req.URL, map[string]string{
10995		"name": c.name,
10996	})
10997	return gensupport.SendRequest(c.ctx_, c.s.client, req)
10998}
10999
11000// Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.Patient-everything" call.
11001func (c *ProjectsLocationsDatasetsFhirStoresFhirPatientEverythingCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
11002	gensupport.SetOptions(c.urlParams_, opts...)
11003	return c.doRequest("")
11004	// {
11005	//   "description": "Retrieves all the resources in the patient compartment for a `Patient`\nresource.\n\nImplements the FHIR extended operation\n[Patient-everything](http://hl7.org/implement/standards/fhir/STU3/patient-operations.html#everything).\n\nOn success, the response body will contain a JSON-encoded representation\nof a `Bundle` resource of type `searchset`, containing the results of the\noperation.\nErrors generated by the FHIR store will contain a JSON-encoded\n`OperationOutcome` resource describing the reason for the error. If the\nrequest cannot be mapped to a valid API method on a FHIR store, a generic\nGCP error might be returned instead.",
11006	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/fhir/Patient/{PatientId}/$everything",
11007	//   "httpMethod": "GET",
11008	//   "id": "healthcare.projects.locations.datasets.fhirStores.fhir.Patient-everything",
11009	//   "parameterOrder": [
11010	//     "name"
11011	//   ],
11012	//   "parameters": {
11013	//     "end": {
11014	//       "description": "The response includes records prior to the end date. If no end date is\nprovided, all records subsequent to the start date are in scope.",
11015	//       "location": "query",
11016	//       "type": "string"
11017	//     },
11018	//     "name": {
11019	//       "description": "Name of the `Patient` resource for which the information is required.",
11020	//       "location": "path",
11021	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/fhir/Patient/[^/]+$",
11022	//       "required": true,
11023	//       "type": "string"
11024	//     },
11025	//     "start": {
11026	//       "description": "The response includes records subsequent to the start date. If no start\ndate is provided, all records prior to the end date are in scope.",
11027	//       "location": "query",
11028	//       "type": "string"
11029	//     }
11030	//   },
11031	//   "path": "v1beta1/{+name}/$everything",
11032	//   "response": {
11033	//     "$ref": "HttpBody"
11034	//   },
11035	//   "scopes": [
11036	//     "https://www.googleapis.com/auth/cloud-platform"
11037	//   ]
11038	// }
11039
11040}
11041
11042// method id "healthcare.projects.locations.datasets.fhirStores.fhir.Resource-purge":
11043
11044type ProjectsLocationsDatasetsFhirStoresFhirResourcePurgeCall struct {
11045	s          *Service
11046	name       string
11047	urlParams_ gensupport.URLParams
11048	ctx_       context.Context
11049	header_    http.Header
11050}
11051
11052// ResourcePurge: Deletes all the historical versions of a resource
11053// (excluding the current
11054// version) from the FHIR store. To remove all versions of a resource,
11055// first
11056// delete the current version and then call this method.
11057//
11058// This is not a FHIR standard operation.
11059func (r *ProjectsLocationsDatasetsFhirStoresFhirService) ResourcePurge(name string) *ProjectsLocationsDatasetsFhirStoresFhirResourcePurgeCall {
11060	c := &ProjectsLocationsDatasetsFhirStoresFhirResourcePurgeCall{s: r.s, urlParams_: make(gensupport.URLParams)}
11061	c.name = name
11062	return c
11063}
11064
11065// Fields allows partial responses to be retrieved. See
11066// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
11067// for more information.
11068func (c *ProjectsLocationsDatasetsFhirStoresFhirResourcePurgeCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirResourcePurgeCall {
11069	c.urlParams_.Set("fields", googleapi.CombineFields(s))
11070	return c
11071}
11072
11073// Context sets the context to be used in this call's Do method. Any
11074// pending HTTP request will be aborted if the provided context is
11075// canceled.
11076func (c *ProjectsLocationsDatasetsFhirStoresFhirResourcePurgeCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirResourcePurgeCall {
11077	c.ctx_ = ctx
11078	return c
11079}
11080
11081// Header returns an http.Header that can be modified by the caller to
11082// add HTTP headers to the request.
11083func (c *ProjectsLocationsDatasetsFhirStoresFhirResourcePurgeCall) Header() http.Header {
11084	if c.header_ == nil {
11085		c.header_ = make(http.Header)
11086	}
11087	return c.header_
11088}
11089
11090func (c *ProjectsLocationsDatasetsFhirStoresFhirResourcePurgeCall) doRequest(alt string) (*http.Response, error) {
11091	reqHeaders := make(http.Header)
11092	for k, v := range c.header_ {
11093		reqHeaders[k] = v
11094	}
11095	reqHeaders.Set("User-Agent", c.s.userAgent())
11096	var body io.Reader = nil
11097	c.urlParams_.Set("alt", alt)
11098	c.urlParams_.Set("prettyPrint", "false")
11099	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}/$purge")
11100	urls += "?" + c.urlParams_.Encode()
11101	req, err := http.NewRequest("DELETE", urls, body)
11102	if err != nil {
11103		return nil, err
11104	}
11105	req.Header = reqHeaders
11106	googleapi.Expand(req.URL, map[string]string{
11107		"name": c.name,
11108	})
11109	return gensupport.SendRequest(c.ctx_, c.s.client, req)
11110}
11111
11112// Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.Resource-purge" call.
11113// Exactly one of *Empty or error will be non-nil. Any non-2xx status
11114// code is an error. Response headers are in either
11115// *Empty.ServerResponse.Header or (if a response was returned at all)
11116// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
11117// check whether the returned error was because http.StatusNotModified
11118// was returned.
11119func (c *ProjectsLocationsDatasetsFhirStoresFhirResourcePurgeCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
11120	gensupport.SetOptions(c.urlParams_, opts...)
11121	res, err := c.doRequest("json")
11122	if res != nil && res.StatusCode == http.StatusNotModified {
11123		if res.Body != nil {
11124			res.Body.Close()
11125		}
11126		return nil, &googleapi.Error{
11127			Code:   res.StatusCode,
11128			Header: res.Header,
11129		}
11130	}
11131	if err != nil {
11132		return nil, err
11133	}
11134	defer googleapi.CloseBody(res)
11135	if err := googleapi.CheckResponse(res); err != nil {
11136		return nil, err
11137	}
11138	ret := &Empty{
11139		ServerResponse: googleapi.ServerResponse{
11140			Header:         res.Header,
11141			HTTPStatusCode: res.StatusCode,
11142		},
11143	}
11144	target := &ret
11145	if err := gensupport.DecodeResponse(target, res); err != nil {
11146		return nil, err
11147	}
11148	return ret, nil
11149	// {
11150	//   "description": "Deletes all the historical versions of a resource (excluding the current\nversion) from the FHIR store. To remove all versions of a resource, first\ndelete the current version and then call this method.\n\nThis is not a FHIR standard operation.",
11151	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/fhir/{fhirId}/{fhirId1}/$purge",
11152	//   "httpMethod": "DELETE",
11153	//   "id": "healthcare.projects.locations.datasets.fhirStores.fhir.Resource-purge",
11154	//   "parameterOrder": [
11155	//     "name"
11156	//   ],
11157	//   "parameters": {
11158	//     "name": {
11159	//       "description": "The name of the resource to purge.",
11160	//       "location": "path",
11161	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/fhir/[^/]+/[^/]+$",
11162	//       "required": true,
11163	//       "type": "string"
11164	//     }
11165	//   },
11166	//   "path": "v1beta1/{+name}/$purge",
11167	//   "response": {
11168	//     "$ref": "Empty"
11169	//   },
11170	//   "scopes": [
11171	//     "https://www.googleapis.com/auth/cloud-platform"
11172	//   ]
11173	// }
11174
11175}
11176
11177// method id "healthcare.projects.locations.datasets.fhirStores.fhir.capabilities":
11178
11179type ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall struct {
11180	s            *Service
11181	name         string
11182	urlParams_   gensupport.URLParams
11183	ifNoneMatch_ string
11184	ctx_         context.Context
11185	header_      http.Header
11186}
11187
11188// Capabilities: Gets the FHIR
11189// [capability
11190// statement](http://hl7.org/implement/standards/fhir/STU3/ca
11191// pabilitystatement.html)
11192// for the store, which contains a description of functionality
11193// supported by
11194// the server.
11195//
11196// Implements the FHIR standard
11197// [capabilities
11198// interaction](http://hl7.org/implement/standards/fhir/STU
11199// 3/http.html#capabilities).
11200//
11201// On success, the response body will contain a JSON-encoded
11202// representation
11203// of a `CapabilityStatement` resource.
11204func (r *ProjectsLocationsDatasetsFhirStoresFhirService) Capabilities(name string) *ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall {
11205	c := &ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
11206	c.name = name
11207	return c
11208}
11209
11210// Fields allows partial responses to be retrieved. See
11211// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
11212// for more information.
11213func (c *ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall {
11214	c.urlParams_.Set("fields", googleapi.CombineFields(s))
11215	return c
11216}
11217
11218// IfNoneMatch sets the optional parameter which makes the operation
11219// fail if the object's ETag matches the given value. This is useful for
11220// getting updates only after the object has changed since the last
11221// request. Use googleapi.IsNotModified to check whether the response
11222// error from Do is the result of In-None-Match.
11223func (c *ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall {
11224	c.ifNoneMatch_ = entityTag
11225	return c
11226}
11227
11228// Context sets the context to be used in this call's Do method. Any
11229// pending HTTP request will be aborted if the provided context is
11230// canceled.
11231func (c *ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall {
11232	c.ctx_ = ctx
11233	return c
11234}
11235
11236// Header returns an http.Header that can be modified by the caller to
11237// add HTTP headers to the request.
11238func (c *ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall) Header() http.Header {
11239	if c.header_ == nil {
11240		c.header_ = make(http.Header)
11241	}
11242	return c.header_
11243}
11244
11245func (c *ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall) doRequest(alt string) (*http.Response, error) {
11246	reqHeaders := make(http.Header)
11247	for k, v := range c.header_ {
11248		reqHeaders[k] = v
11249	}
11250	reqHeaders.Set("User-Agent", c.s.userAgent())
11251	if c.ifNoneMatch_ != "" {
11252		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
11253	}
11254	var body io.Reader = nil
11255	c.urlParams_.Set("alt", alt)
11256	c.urlParams_.Set("prettyPrint", "false")
11257	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}/fhir/metadata")
11258	urls += "?" + c.urlParams_.Encode()
11259	req, err := http.NewRequest("GET", urls, body)
11260	if err != nil {
11261		return nil, err
11262	}
11263	req.Header = reqHeaders
11264	googleapi.Expand(req.URL, map[string]string{
11265		"name": c.name,
11266	})
11267	return gensupport.SendRequest(c.ctx_, c.s.client, req)
11268}
11269
11270// Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.capabilities" call.
11271func (c *ProjectsLocationsDatasetsFhirStoresFhirCapabilitiesCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
11272	gensupport.SetOptions(c.urlParams_, opts...)
11273	return c.doRequest("")
11274	// {
11275	//   "description": "Gets the FHIR [capability\nstatement](http://hl7.org/implement/standards/fhir/STU3/capabilitystatement.html)\nfor the store, which contains a description of functionality supported by\nthe server.\n\nImplements the FHIR standard [capabilities\ninteraction](http://hl7.org/implement/standards/fhir/STU3/http.html#capabilities).\n\nOn success, the response body will contain a JSON-encoded representation\nof a `CapabilityStatement` resource.",
11276	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/fhir/metadata",
11277	//   "httpMethod": "GET",
11278	//   "id": "healthcare.projects.locations.datasets.fhirStores.fhir.capabilities",
11279	//   "parameterOrder": [
11280	//     "name"
11281	//   ],
11282	//   "parameters": {
11283	//     "name": {
11284	//       "description": "Name of the FHIR store to retrieve the capabilities for.",
11285	//       "location": "path",
11286	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
11287	//       "required": true,
11288	//       "type": "string"
11289	//     }
11290	//   },
11291	//   "path": "v1beta1/{+name}/fhir/metadata",
11292	//   "response": {
11293	//     "$ref": "HttpBody"
11294	//   },
11295	//   "scopes": [
11296	//     "https://www.googleapis.com/auth/cloud-platform"
11297	//   ]
11298	// }
11299
11300}
11301
11302// method id "healthcare.projects.locations.datasets.fhirStores.fhir.conditionalDelete":
11303
11304type ProjectsLocationsDatasetsFhirStoresFhirConditionalDeleteCall struct {
11305	s          *Service
11306	parent     string
11307	type_      string
11308	urlParams_ gensupport.URLParams
11309	ctx_       context.Context
11310	header_    http.Header
11311}
11312
11313// ConditionalDelete: Deletes FHIR resources that match a search
11314// query.
11315//
11316// Implements the FHIR standard [conditional
11317// delete
11318// interaction](http://hl7.org/implement/standards/fhir/STU3/http.
11319// html#2.21.0.13.1).
11320// If multiple resources match, all of them will be deleted.
11321//
11322// Search terms are provided as query parameters following the same
11323// pattern as
11324// the search method.
11325//
11326// Note: Unless resource versioning is disabled by setting
11327// the
11328// disable_resource_versioning flag
11329// on the FHIR store, the deleted resources will be moved to a
11330// history
11331// repository that can still be retrieved through vread
11332// and related methods, unless they are removed by the
11333// purge method.
11334func (r *ProjectsLocationsDatasetsFhirStoresFhirService) ConditionalDelete(parent string, type_ string) *ProjectsLocationsDatasetsFhirStoresFhirConditionalDeleteCall {
11335	c := &ProjectsLocationsDatasetsFhirStoresFhirConditionalDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
11336	c.parent = parent
11337	c.type_ = type_
11338	return c
11339}
11340
11341// Fields allows partial responses to be retrieved. See
11342// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
11343// for more information.
11344func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirConditionalDeleteCall {
11345	c.urlParams_.Set("fields", googleapi.CombineFields(s))
11346	return c
11347}
11348
11349// Context sets the context to be used in this call's Do method. Any
11350// pending HTTP request will be aborted if the provided context is
11351// canceled.
11352func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirConditionalDeleteCall {
11353	c.ctx_ = ctx
11354	return c
11355}
11356
11357// Header returns an http.Header that can be modified by the caller to
11358// add HTTP headers to the request.
11359func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalDeleteCall) Header() http.Header {
11360	if c.header_ == nil {
11361		c.header_ = make(http.Header)
11362	}
11363	return c.header_
11364}
11365
11366func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalDeleteCall) doRequest(alt string) (*http.Response, error) {
11367	reqHeaders := make(http.Header)
11368	for k, v := range c.header_ {
11369		reqHeaders[k] = v
11370	}
11371	reqHeaders.Set("User-Agent", c.s.userAgent())
11372	var body io.Reader = nil
11373	c.urlParams_.Set("alt", alt)
11374	c.urlParams_.Set("prettyPrint", "false")
11375	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/fhir/{+type}")
11376	urls += "?" + c.urlParams_.Encode()
11377	req, err := http.NewRequest("DELETE", urls, body)
11378	if err != nil {
11379		return nil, err
11380	}
11381	req.Header = reqHeaders
11382	googleapi.Expand(req.URL, map[string]string{
11383		"parent": c.parent,
11384		"type":   c.type_,
11385	})
11386	return gensupport.SendRequest(c.ctx_, c.s.client, req)
11387}
11388
11389// Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.conditionalDelete" call.
11390// Exactly one of *Empty or error will be non-nil. Any non-2xx status
11391// code is an error. Response headers are in either
11392// *Empty.ServerResponse.Header or (if a response was returned at all)
11393// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
11394// check whether the returned error was because http.StatusNotModified
11395// was returned.
11396func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
11397	gensupport.SetOptions(c.urlParams_, opts...)
11398	res, err := c.doRequest("json")
11399	if res != nil && res.StatusCode == http.StatusNotModified {
11400		if res.Body != nil {
11401			res.Body.Close()
11402		}
11403		return nil, &googleapi.Error{
11404			Code:   res.StatusCode,
11405			Header: res.Header,
11406		}
11407	}
11408	if err != nil {
11409		return nil, err
11410	}
11411	defer googleapi.CloseBody(res)
11412	if err := googleapi.CheckResponse(res); err != nil {
11413		return nil, err
11414	}
11415	ret := &Empty{
11416		ServerResponse: googleapi.ServerResponse{
11417			Header:         res.Header,
11418			HTTPStatusCode: res.StatusCode,
11419		},
11420	}
11421	target := &ret
11422	if err := gensupport.DecodeResponse(target, res); err != nil {
11423		return nil, err
11424	}
11425	return ret, nil
11426	// {
11427	//   "description": "Deletes FHIR resources that match a search query.\n\nImplements the FHIR standard [conditional delete\ninteraction](http://hl7.org/implement/standards/fhir/STU3/http.html#2.21.0.13.1).\nIf multiple resources match, all of them will be deleted.\n\nSearch terms are provided as query parameters following the same pattern as\nthe search method.\n\nNote: Unless resource versioning is disabled by setting the\ndisable_resource_versioning flag\non the FHIR store, the deleted resources will be moved to a history\nrepository that can still be retrieved through vread\nand related methods, unless they are removed by the\npurge method.",
11428	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/fhir/{fhirId}",
11429	//   "httpMethod": "DELETE",
11430	//   "id": "healthcare.projects.locations.datasets.fhirStores.fhir.conditionalDelete",
11431	//   "parameterOrder": [
11432	//     "parent",
11433	//     "type"
11434	//   ],
11435	//   "parameters": {
11436	//     "parent": {
11437	//       "description": "The name of the FHIR store this resource belongs to.",
11438	//       "location": "path",
11439	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
11440	//       "required": true,
11441	//       "type": "string"
11442	//     },
11443	//     "type": {
11444	//       "description": "The FHIR resource type to delete, such as Patient or Observation. For a\ncomplete list, see the [FHIR Resource\nIndex](http://hl7.org/implement/standards/fhir/STU3/resourcelist.html).",
11445	//       "location": "path",
11446	//       "pattern": "^[^/]+$",
11447	//       "required": true,
11448	//       "type": "string"
11449	//     }
11450	//   },
11451	//   "path": "v1beta1/{+parent}/fhir/{+type}",
11452	//   "response": {
11453	//     "$ref": "Empty"
11454	//   },
11455	//   "scopes": [
11456	//     "https://www.googleapis.com/auth/cloud-platform"
11457	//   ]
11458	// }
11459
11460}
11461
11462// method id "healthcare.projects.locations.datasets.fhirStores.fhir.conditionalPatch":
11463
11464type ProjectsLocationsDatasetsFhirStoresFhirConditionalPatchCall struct {
11465	s          *Service
11466	parent     string
11467	type_      string
11468	body_      io.Reader
11469	urlParams_ gensupport.URLParams
11470	ctx_       context.Context
11471	header_    http.Header
11472}
11473
11474// ConditionalPatch: If a resource is found based on the search criteria
11475// specified in the query
11476// parameters, updates part of that resource by applying the
11477// operations
11478// specified in a [JSON Patch](http://jsonpatch.com/)
11479// document.
11480//
11481// Implements the FHIR standard [conditional
11482// patch
11483// interaction](http://hl7.org/implement/standards/fhir/STU3/http.h
11484// tml#patch).
11485//
11486// Search terms are provided as query parameters following the same
11487// pattern as
11488// the search method.
11489//
11490// If the search criteria identify more than one match, the request
11491// will
11492// return a `412 Precondition Failed` error.
11493//
11494// The request body must contain a JSON Patch document, and the
11495// request
11496// headers must contain `Content-Type: application/json-patch+json`.
11497//
11498// On success, the response body will contain a JSON-encoded
11499// representation
11500// of the updated resource, including the server-assigned version
11501// ID.
11502// Errors generated by the FHIR store will contain a
11503// JSON-encoded
11504// `OperationOutcome` resource describing the reason for the error. If
11505// the
11506// request cannot be mapped to a valid API method on a FHIR store, a
11507// generic
11508// GCP error might be returned instead.
11509func (r *ProjectsLocationsDatasetsFhirStoresFhirService) ConditionalPatch(parent string, type_ string, body_ io.Reader) *ProjectsLocationsDatasetsFhirStoresFhirConditionalPatchCall {
11510	c := &ProjectsLocationsDatasetsFhirStoresFhirConditionalPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
11511	c.parent = parent
11512	c.type_ = type_
11513	c.body_ = body_
11514	return c
11515}
11516
11517// Fields allows partial responses to be retrieved. See
11518// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
11519// for more information.
11520func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirConditionalPatchCall {
11521	c.urlParams_.Set("fields", googleapi.CombineFields(s))
11522	return c
11523}
11524
11525// Context sets the context to be used in this call's Do method. Any
11526// pending HTTP request will be aborted if the provided context is
11527// canceled.
11528func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirConditionalPatchCall {
11529	c.ctx_ = ctx
11530	return c
11531}
11532
11533// Header returns an http.Header that can be modified by the caller to
11534// add HTTP headers to the request.
11535func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalPatchCall) Header() http.Header {
11536	if c.header_ == nil {
11537		c.header_ = make(http.Header)
11538	}
11539	return c.header_
11540}
11541
11542func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalPatchCall) doRequest(alt string) (*http.Response, error) {
11543	reqHeaders := make(http.Header)
11544	for k, v := range c.header_ {
11545		reqHeaders[k] = v
11546	}
11547	reqHeaders.Set("User-Agent", c.s.userAgent())
11548	var body io.Reader = nil
11549	body = c.body_
11550	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/fhir/{+type}")
11551	urls += "?" + c.urlParams_.Encode()
11552	req, err := http.NewRequest("PATCH", urls, body)
11553	if err != nil {
11554		return nil, err
11555	}
11556	req.Header = reqHeaders
11557	googleapi.Expand(req.URL, map[string]string{
11558		"parent": c.parent,
11559		"type":   c.type_,
11560	})
11561	return gensupport.SendRequest(c.ctx_, c.s.client, req)
11562}
11563
11564// Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.conditionalPatch" call.
11565func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalPatchCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
11566	gensupport.SetOptions(c.urlParams_, opts...)
11567	return c.doRequest("")
11568	// {
11569	//   "description": "If a resource is found based on the search criteria specified in the query\nparameters, updates part of that resource by applying the operations\nspecified in a [JSON Patch](http://jsonpatch.com/) document.\n\nImplements the FHIR standard [conditional patch\ninteraction](http://hl7.org/implement/standards/fhir/STU3/http.html#patch).\n\nSearch terms are provided as query parameters following the same pattern as\nthe search method.\n\nIf the search criteria identify more than one match, the request will\nreturn a `412 Precondition Failed` error.\n\nThe request body must contain a JSON Patch document, and the request\nheaders must contain `Content-Type: application/json-patch+json`.\n\nOn success, the response body will contain a JSON-encoded representation\nof the updated resource, including the server-assigned version ID.\nErrors generated by the FHIR store will contain a JSON-encoded\n`OperationOutcome` resource describing the reason for the error. If the\nrequest cannot be mapped to a valid API method on a FHIR store, a generic\nGCP error might be returned instead.",
11570	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/fhir/{fhirId}",
11571	//   "httpMethod": "PATCH",
11572	//   "id": "healthcare.projects.locations.datasets.fhirStores.fhir.conditionalPatch",
11573	//   "parameterOrder": [
11574	//     "parent",
11575	//     "type"
11576	//   ],
11577	//   "parameters": {
11578	//     "parent": {
11579	//       "description": "The name of the FHIR store this resource belongs to.",
11580	//       "location": "path",
11581	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
11582	//       "required": true,
11583	//       "type": "string"
11584	//     },
11585	//     "type": {
11586	//       "description": "The FHIR resource type to update, such as Patient or Observation. For a\ncomplete list, see the [FHIR Resource\nIndex](http://hl7.org/implement/standards/fhir/STU3/resourcelist.html).",
11587	//       "location": "path",
11588	//       "pattern": "^[^/]+$",
11589	//       "required": true,
11590	//       "type": "string"
11591	//     }
11592	//   },
11593	//   "path": "v1beta1/{+parent}/fhir/{+type}",
11594	//   "request": {
11595	//     "$ref": "HttpBody"
11596	//   },
11597	//   "response": {
11598	//     "$ref": "HttpBody"
11599	//   },
11600	//   "scopes": [
11601	//     "https://www.googleapis.com/auth/cloud-platform"
11602	//   ]
11603	// }
11604
11605}
11606
11607// method id "healthcare.projects.locations.datasets.fhirStores.fhir.conditionalUpdate":
11608
11609type ProjectsLocationsDatasetsFhirStoresFhirConditionalUpdateCall struct {
11610	s          *Service
11611	parent     string
11612	type_      string
11613	body_      io.Reader
11614	urlParams_ gensupport.URLParams
11615	ctx_       context.Context
11616	header_    http.Header
11617}
11618
11619// ConditionalUpdate: If a resource is found based on the search
11620// criteria specified in the query
11621// parameters, updates the entire contents of that resource.
11622//
11623// Implements the FHIR standard [conditional
11624// update
11625// interaction](http://hl7.org/implement/standards/fhir/STU3/http.
11626// html#cond-update).
11627//
11628// Search terms are provided as query parameters following the same
11629// pattern as
11630// the search method.
11631//
11632// If the search criteria identify more than one match, the request
11633// will
11634// return a `412 Precondition Failed` error.
11635// If the search criteria identify zero matches, and the supplied
11636// resource
11637// body contains an `id`, and the FHIR store has
11638// enable_update_create set, creates the
11639// resource with the client-specified ID. If the search criteria
11640// identify zero
11641// matches, and the supplied resource body does not contain an `id`,
11642// the
11643// resource will be created with a server-assigned ID as per the
11644// create method.
11645//
11646// The request body must contain a JSON-encoded FHIR resource, and the
11647// request
11648// headers must contain `Content-Type: application/fhir+json`.
11649//
11650// On success, the response body will contain a JSON-encoded
11651// representation
11652// of the updated resource, including the server-assigned version
11653// ID.
11654// Errors generated by the FHIR store will contain a
11655// JSON-encoded
11656// `OperationOutcome` resource describing the reason for the error. If
11657// the
11658// request cannot be mapped to a valid API method on a FHIR store, a
11659// generic
11660// GCP error might be returned instead.
11661func (r *ProjectsLocationsDatasetsFhirStoresFhirService) ConditionalUpdate(parent string, type_ string, body_ io.Reader) *ProjectsLocationsDatasetsFhirStoresFhirConditionalUpdateCall {
11662	c := &ProjectsLocationsDatasetsFhirStoresFhirConditionalUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
11663	c.parent = parent
11664	c.type_ = type_
11665	c.body_ = body_
11666	return c
11667}
11668
11669// Fields allows partial responses to be retrieved. See
11670// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
11671// for more information.
11672func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalUpdateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirConditionalUpdateCall {
11673	c.urlParams_.Set("fields", googleapi.CombineFields(s))
11674	return c
11675}
11676
11677// Context sets the context to be used in this call's Do method. Any
11678// pending HTTP request will be aborted if the provided context is
11679// canceled.
11680func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalUpdateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirConditionalUpdateCall {
11681	c.ctx_ = ctx
11682	return c
11683}
11684
11685// Header returns an http.Header that can be modified by the caller to
11686// add HTTP headers to the request.
11687func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalUpdateCall) Header() http.Header {
11688	if c.header_ == nil {
11689		c.header_ = make(http.Header)
11690	}
11691	return c.header_
11692}
11693
11694func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalUpdateCall) doRequest(alt string) (*http.Response, error) {
11695	reqHeaders := make(http.Header)
11696	for k, v := range c.header_ {
11697		reqHeaders[k] = v
11698	}
11699	reqHeaders.Set("User-Agent", c.s.userAgent())
11700	var body io.Reader = nil
11701	body = c.body_
11702	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/fhir/{+type}")
11703	urls += "?" + c.urlParams_.Encode()
11704	req, err := http.NewRequest("PUT", urls, body)
11705	if err != nil {
11706		return nil, err
11707	}
11708	req.Header = reqHeaders
11709	googleapi.Expand(req.URL, map[string]string{
11710		"parent": c.parent,
11711		"type":   c.type_,
11712	})
11713	return gensupport.SendRequest(c.ctx_, c.s.client, req)
11714}
11715
11716// Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.conditionalUpdate" call.
11717func (c *ProjectsLocationsDatasetsFhirStoresFhirConditionalUpdateCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
11718	gensupport.SetOptions(c.urlParams_, opts...)
11719	return c.doRequest("")
11720	// {
11721	//   "description": "If a resource is found based on the search criteria specified in the query\nparameters, updates the entire contents of that resource.\n\nImplements the FHIR standard [conditional update\ninteraction](http://hl7.org/implement/standards/fhir/STU3/http.html#cond-update).\n\nSearch terms are provided as query parameters following the same pattern as\nthe search method.\n\nIf the search criteria identify more than one match, the request will\nreturn a `412 Precondition Failed` error.\nIf the search criteria identify zero matches, and the supplied resource\nbody contains an `id`, and the FHIR store has\nenable_update_create set, creates the\nresource with the client-specified ID. If the search criteria identify zero\nmatches, and the supplied resource body does not contain an `id`, the\nresource will be created with a server-assigned ID as per the\ncreate method.\n\nThe request body must contain a JSON-encoded FHIR resource, and the request\nheaders must contain `Content-Type: application/fhir+json`.\n\nOn success, the response body will contain a JSON-encoded representation\nof the updated resource, including the server-assigned version ID.\nErrors generated by the FHIR store will contain a JSON-encoded\n`OperationOutcome` resource describing the reason for the error. If the\nrequest cannot be mapped to a valid API method on a FHIR store, a generic\nGCP error might be returned instead.",
11722	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/fhir/{fhirId}",
11723	//   "httpMethod": "PUT",
11724	//   "id": "healthcare.projects.locations.datasets.fhirStores.fhir.conditionalUpdate",
11725	//   "parameterOrder": [
11726	//     "parent",
11727	//     "type"
11728	//   ],
11729	//   "parameters": {
11730	//     "parent": {
11731	//       "description": "The name of the FHIR store this resource belongs to.",
11732	//       "location": "path",
11733	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
11734	//       "required": true,
11735	//       "type": "string"
11736	//     },
11737	//     "type": {
11738	//       "description": "The FHIR resource type to update, such as Patient or Observation. For a\ncomplete list, see the [FHIR Resource\nIndex](http://hl7.org/implement/standards/fhir/STU3/resourcelist.html).\nMust match the resource type in the provided content.",
11739	//       "location": "path",
11740	//       "pattern": "^[^/]+$",
11741	//       "required": true,
11742	//       "type": "string"
11743	//     }
11744	//   },
11745	//   "path": "v1beta1/{+parent}/fhir/{+type}",
11746	//   "request": {
11747	//     "$ref": "HttpBody"
11748	//   },
11749	//   "response": {
11750	//     "$ref": "HttpBody"
11751	//   },
11752	//   "scopes": [
11753	//     "https://www.googleapis.com/auth/cloud-platform"
11754	//   ]
11755	// }
11756
11757}
11758
11759// method id "healthcare.projects.locations.datasets.fhirStores.fhir.create":
11760
11761type ProjectsLocationsDatasetsFhirStoresFhirCreateCall struct {
11762	s          *Service
11763	parent     string
11764	type_      string
11765	body_      io.Reader
11766	urlParams_ gensupport.URLParams
11767	ctx_       context.Context
11768	header_    http.Header
11769}
11770
11771// Create: Creates a FHIR resource.
11772//
11773// Implements the FHIR standard
11774// [create
11775// interaction](http://hl7.org/implement/standards/fhir/STU3/http
11776// .html#create),
11777// which creates a new resource with a server-assigned resource
11778// ID.
11779//
11780// Also supports the FHIR standard [conditional
11781// create
11782// interaction](http://hl7.org/implement/standards/fhir/STU3/http.
11783// html#ccreate),
11784// specified by supplying an `If-None-Exist` header containing a FHIR
11785// search
11786// query. If no resources match this search query, the server processes
11787// the
11788// create operation as normal.
11789//
11790// The request body must contain a JSON-encoded FHIR resource, and the
11791// request
11792// headers must contain `Content-Type: application/fhir+json`.
11793//
11794// On success, the response body will contain a JSON-encoded
11795// representation
11796// of the resource as it was created on the server, including
11797// the
11798// server-assigned resource ID and version ID.
11799// Errors generated by the FHIR store will contain a
11800// JSON-encoded
11801// `OperationOutcome` resource describing the reason for the error. If
11802// the
11803// request cannot be mapped to a valid API method on a FHIR store, a
11804// generic
11805// GCP error might be returned instead.
11806func (r *ProjectsLocationsDatasetsFhirStoresFhirService) Create(parent string, type_ string, body_ io.Reader) *ProjectsLocationsDatasetsFhirStoresFhirCreateCall {
11807	c := &ProjectsLocationsDatasetsFhirStoresFhirCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
11808	c.parent = parent
11809	c.type_ = type_
11810	c.body_ = body_
11811	return c
11812}
11813
11814// Fields allows partial responses to be retrieved. See
11815// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
11816// for more information.
11817func (c *ProjectsLocationsDatasetsFhirStoresFhirCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirCreateCall {
11818	c.urlParams_.Set("fields", googleapi.CombineFields(s))
11819	return c
11820}
11821
11822// Context sets the context to be used in this call's Do method. Any
11823// pending HTTP request will be aborted if the provided context is
11824// canceled.
11825func (c *ProjectsLocationsDatasetsFhirStoresFhirCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirCreateCall {
11826	c.ctx_ = ctx
11827	return c
11828}
11829
11830// Header returns an http.Header that can be modified by the caller to
11831// add HTTP headers to the request.
11832func (c *ProjectsLocationsDatasetsFhirStoresFhirCreateCall) Header() http.Header {
11833	if c.header_ == nil {
11834		c.header_ = make(http.Header)
11835	}
11836	return c.header_
11837}
11838
11839func (c *ProjectsLocationsDatasetsFhirStoresFhirCreateCall) doRequest(alt string) (*http.Response, error) {
11840	reqHeaders := make(http.Header)
11841	for k, v := range c.header_ {
11842		reqHeaders[k] = v
11843	}
11844	reqHeaders.Set("User-Agent", c.s.userAgent())
11845	var body io.Reader = nil
11846	body = c.body_
11847	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/fhir/{+type}")
11848	urls += "?" + c.urlParams_.Encode()
11849	req, err := http.NewRequest("POST", urls, body)
11850	if err != nil {
11851		return nil, err
11852	}
11853	req.Header = reqHeaders
11854	googleapi.Expand(req.URL, map[string]string{
11855		"parent": c.parent,
11856		"type":   c.type_,
11857	})
11858	return gensupport.SendRequest(c.ctx_, c.s.client, req)
11859}
11860
11861// Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.create" call.
11862func (c *ProjectsLocationsDatasetsFhirStoresFhirCreateCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
11863	gensupport.SetOptions(c.urlParams_, opts...)
11864	return c.doRequest("")
11865	// {
11866	//   "description": "Creates a FHIR resource.\n\nImplements the FHIR standard [create\ninteraction](http://hl7.org/implement/standards/fhir/STU3/http.html#create),\nwhich creates a new resource with a server-assigned resource ID.\n\nAlso supports the FHIR standard [conditional create\ninteraction](http://hl7.org/implement/standards/fhir/STU3/http.html#ccreate),\nspecified by supplying an `If-None-Exist` header containing a FHIR search\nquery. If no resources match this search query, the server processes the\ncreate operation as normal.\n\nThe request body must contain a JSON-encoded FHIR resource, and the request\nheaders must contain `Content-Type: application/fhir+json`.\n\nOn success, the response body will contain a JSON-encoded representation\nof the resource as it was created on the server, including the\nserver-assigned resource ID and version ID.\nErrors generated by the FHIR store will contain a JSON-encoded\n`OperationOutcome` resource describing the reason for the error. If the\nrequest cannot be mapped to a valid API method on a FHIR store, a generic\nGCP error might be returned instead.",
11867	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/fhir/{fhirId}",
11868	//   "httpMethod": "POST",
11869	//   "id": "healthcare.projects.locations.datasets.fhirStores.fhir.create",
11870	//   "parameterOrder": [
11871	//     "parent",
11872	//     "type"
11873	//   ],
11874	//   "parameters": {
11875	//     "parent": {
11876	//       "description": "The name of the FHIR store this resource belongs to.",
11877	//       "location": "path",
11878	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
11879	//       "required": true,
11880	//       "type": "string"
11881	//     },
11882	//     "type": {
11883	//       "description": "The FHIR resource type to create, such as Patient or Observation. For a\ncomplete list, see the [FHIR Resource\nIndex](http://hl7.org/implement/standards/fhir/STU3/resourcelist.html).\nMust match the resource type in the provided content.",
11884	//       "location": "path",
11885	//       "pattern": "^[^/]+$",
11886	//       "required": true,
11887	//       "type": "string"
11888	//     }
11889	//   },
11890	//   "path": "v1beta1/{+parent}/fhir/{+type}",
11891	//   "request": {
11892	//     "$ref": "HttpBody"
11893	//   },
11894	//   "response": {
11895	//     "$ref": "HttpBody"
11896	//   },
11897	//   "scopes": [
11898	//     "https://www.googleapis.com/auth/cloud-platform"
11899	//   ]
11900	// }
11901
11902}
11903
11904// method id "healthcare.projects.locations.datasets.fhirStores.fhir.delete":
11905
11906type ProjectsLocationsDatasetsFhirStoresFhirDeleteCall struct {
11907	s          *Service
11908	name       string
11909	urlParams_ gensupport.URLParams
11910	ctx_       context.Context
11911	header_    http.Header
11912}
11913
11914// Delete: Deletes a FHIR resource.
11915//
11916// Implements the FHIR standard
11917// [delete
11918// interaction](http://hl7.org/implement/standards/fhir/STU3/http
11919// .html#delete).
11920//
11921// Note: Unless resource versioning is disabled by setting
11922// the
11923// disable_resource_versioning flag
11924// on the FHIR store, the deleted resources will be moved to a
11925// history
11926// repository that can still be retrieved through vread
11927// and related methods, unless they are removed by the
11928// purge method.
11929func (r *ProjectsLocationsDatasetsFhirStoresFhirService) Delete(name string) *ProjectsLocationsDatasetsFhirStoresFhirDeleteCall {
11930	c := &ProjectsLocationsDatasetsFhirStoresFhirDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
11931	c.name = name
11932	return c
11933}
11934
11935// Fields allows partial responses to be retrieved. See
11936// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
11937// for more information.
11938func (c *ProjectsLocationsDatasetsFhirStoresFhirDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirDeleteCall {
11939	c.urlParams_.Set("fields", googleapi.CombineFields(s))
11940	return c
11941}
11942
11943// Context sets the context to be used in this call's Do method. Any
11944// pending HTTP request will be aborted if the provided context is
11945// canceled.
11946func (c *ProjectsLocationsDatasetsFhirStoresFhirDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirDeleteCall {
11947	c.ctx_ = ctx
11948	return c
11949}
11950
11951// Header returns an http.Header that can be modified by the caller to
11952// add HTTP headers to the request.
11953func (c *ProjectsLocationsDatasetsFhirStoresFhirDeleteCall) Header() http.Header {
11954	if c.header_ == nil {
11955		c.header_ = make(http.Header)
11956	}
11957	return c.header_
11958}
11959
11960func (c *ProjectsLocationsDatasetsFhirStoresFhirDeleteCall) doRequest(alt string) (*http.Response, error) {
11961	reqHeaders := make(http.Header)
11962	for k, v := range c.header_ {
11963		reqHeaders[k] = v
11964	}
11965	reqHeaders.Set("User-Agent", c.s.userAgent())
11966	var body io.Reader = nil
11967	c.urlParams_.Set("alt", alt)
11968	c.urlParams_.Set("prettyPrint", "false")
11969	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
11970	urls += "?" + c.urlParams_.Encode()
11971	req, err := http.NewRequest("DELETE", urls, body)
11972	if err != nil {
11973		return nil, err
11974	}
11975	req.Header = reqHeaders
11976	googleapi.Expand(req.URL, map[string]string{
11977		"name": c.name,
11978	})
11979	return gensupport.SendRequest(c.ctx_, c.s.client, req)
11980}
11981
11982// Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.delete" call.
11983func (c *ProjectsLocationsDatasetsFhirStoresFhirDeleteCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
11984	gensupport.SetOptions(c.urlParams_, opts...)
11985	return c.doRequest("")
11986	// {
11987	//   "description": "Deletes a FHIR resource.\n\nImplements the FHIR standard [delete\ninteraction](http://hl7.org/implement/standards/fhir/STU3/http.html#delete).\n\nNote: Unless resource versioning is disabled by setting the\ndisable_resource_versioning flag\non the FHIR store, the deleted resources will be moved to a history\nrepository that can still be retrieved through vread\nand related methods, unless they are removed by the\npurge method.",
11988	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/fhir/{fhirId}/{fhirId1}",
11989	//   "httpMethod": "DELETE",
11990	//   "id": "healthcare.projects.locations.datasets.fhirStores.fhir.delete",
11991	//   "parameterOrder": [
11992	//     "name"
11993	//   ],
11994	//   "parameters": {
11995	//     "name": {
11996	//       "description": "The name of the resource to delete.",
11997	//       "location": "path",
11998	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/fhir/[^/]+/[^/]+$",
11999	//       "required": true,
12000	//       "type": "string"
12001	//     }
12002	//   },
12003	//   "path": "v1beta1/{+name}",
12004	//   "response": {
12005	//     "$ref": "HttpBody"
12006	//   },
12007	//   "scopes": [
12008	//     "https://www.googleapis.com/auth/cloud-platform"
12009	//   ]
12010	// }
12011
12012}
12013
12014// method id "healthcare.projects.locations.datasets.fhirStores.fhir.executeBundle":
12015
12016type ProjectsLocationsDatasetsFhirStoresFhirExecuteBundleCall struct {
12017	s          *Service
12018	parent     string
12019	body_      io.Reader
12020	urlParams_ gensupport.URLParams
12021	ctx_       context.Context
12022	header_    http.Header
12023}
12024
12025// ExecuteBundle: Executes all the requests in the given
12026// Bundle.
12027//
12028// Implements the FHIR standard
12029// [batch/transaction
12030// interaction](http://hl7.org/implement/standards/fhi
12031// r/STU3/http.html#transaction).
12032//
12033// Supports all interactions within a bundle, except search. This
12034// method
12035// accepts Bundles of type `batch` and `transaction`, processing
12036// them
12037// according to the [batch
12038// processing
12039// rules](http://hl7.org/implement/standards/fhir/STU3/http.ht
12040// ml#2.21.0.17.1)
12041// and [transaction
12042// processing
12043// rules](http://hl7.org/implement/standards/fhir/STU3/http.ht
12044// ml#2.21.0.17.2).
12045//
12046// The request body must contain a JSON-encoded FHIR `Bundle` resource,
12047// and
12048// the request headers must contain `Content-Type:
12049// application/fhir+json`.
12050//
12051// For a batch bundle or a successful transaction the response body
12052// will
12053// contain a JSON-encoded representation of a `Bundle` resource of
12054// type
12055// `batch-response` or `transaction-response` containing one entry for
12056// each
12057// entry in the request, with the outcome of processing the entry. In
12058// the
12059// case of an error for a transaction bundle, the response body will
12060// contain
12061// a JSON-encoded `OperationOutcome` resource describing the reason for
12062// the
12063// error. If the request cannot be mapped to a valid API method on a
12064// FHIR
12065// store, a generic GCP error might be returned instead.
12066func (r *ProjectsLocationsDatasetsFhirStoresFhirService) ExecuteBundle(parent string, body_ io.Reader) *ProjectsLocationsDatasetsFhirStoresFhirExecuteBundleCall {
12067	c := &ProjectsLocationsDatasetsFhirStoresFhirExecuteBundleCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12068	c.parent = parent
12069	c.body_ = body_
12070	return c
12071}
12072
12073// Fields allows partial responses to be retrieved. See
12074// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12075// for more information.
12076func (c *ProjectsLocationsDatasetsFhirStoresFhirExecuteBundleCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirExecuteBundleCall {
12077	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12078	return c
12079}
12080
12081// Context sets the context to be used in this call's Do method. Any
12082// pending HTTP request will be aborted if the provided context is
12083// canceled.
12084func (c *ProjectsLocationsDatasetsFhirStoresFhirExecuteBundleCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirExecuteBundleCall {
12085	c.ctx_ = ctx
12086	return c
12087}
12088
12089// Header returns an http.Header that can be modified by the caller to
12090// add HTTP headers to the request.
12091func (c *ProjectsLocationsDatasetsFhirStoresFhirExecuteBundleCall) Header() http.Header {
12092	if c.header_ == nil {
12093		c.header_ = make(http.Header)
12094	}
12095	return c.header_
12096}
12097
12098func (c *ProjectsLocationsDatasetsFhirStoresFhirExecuteBundleCall) doRequest(alt string) (*http.Response, error) {
12099	reqHeaders := make(http.Header)
12100	for k, v := range c.header_ {
12101		reqHeaders[k] = v
12102	}
12103	reqHeaders.Set("User-Agent", c.s.userAgent())
12104	var body io.Reader = nil
12105	body = c.body_
12106	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/fhir")
12107	urls += "?" + c.urlParams_.Encode()
12108	req, err := http.NewRequest("POST", urls, body)
12109	if err != nil {
12110		return nil, err
12111	}
12112	req.Header = reqHeaders
12113	googleapi.Expand(req.URL, map[string]string{
12114		"parent": c.parent,
12115	})
12116	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12117}
12118
12119// Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.executeBundle" call.
12120func (c *ProjectsLocationsDatasetsFhirStoresFhirExecuteBundleCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
12121	gensupport.SetOptions(c.urlParams_, opts...)
12122	return c.doRequest("")
12123	// {
12124	//   "description": "Executes all the requests in the given Bundle.\n\nImplements the FHIR standard [batch/transaction\ninteraction](http://hl7.org/implement/standards/fhir/STU3/http.html#transaction).\n\nSupports all interactions within a bundle, except search. This method\naccepts Bundles of type `batch` and `transaction`, processing them\naccording to the [batch processing\nrules](http://hl7.org/implement/standards/fhir/STU3/http.html#2.21.0.17.1)\nand [transaction processing\nrules](http://hl7.org/implement/standards/fhir/STU3/http.html#2.21.0.17.2).\n\nThe request body must contain a JSON-encoded FHIR `Bundle` resource, and\nthe request headers must contain `Content-Type: application/fhir+json`.\n\nFor a batch bundle or a successful transaction the response body will\ncontain a JSON-encoded representation of a `Bundle` resource of type\n`batch-response` or `transaction-response` containing one entry for each\nentry in the request, with the outcome of processing the entry. In the\ncase of an error for a transaction bundle, the response body will contain\na JSON-encoded `OperationOutcome` resource describing the reason for the\nerror. If the request cannot be mapped to a valid API method on a FHIR\nstore, a generic GCP error might be returned instead.",
12125	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/fhir",
12126	//   "httpMethod": "POST",
12127	//   "id": "healthcare.projects.locations.datasets.fhirStores.fhir.executeBundle",
12128	//   "parameterOrder": [
12129	//     "parent"
12130	//   ],
12131	//   "parameters": {
12132	//     "parent": {
12133	//       "description": "Name of the FHIR store in which this bundle will be executed.",
12134	//       "location": "path",
12135	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
12136	//       "required": true,
12137	//       "type": "string"
12138	//     }
12139	//   },
12140	//   "path": "v1beta1/{+parent}/fhir",
12141	//   "request": {
12142	//     "$ref": "HttpBody"
12143	//   },
12144	//   "response": {
12145	//     "$ref": "HttpBody"
12146	//   },
12147	//   "scopes": [
12148	//     "https://www.googleapis.com/auth/cloud-platform"
12149	//   ]
12150	// }
12151
12152}
12153
12154// method id "healthcare.projects.locations.datasets.fhirStores.fhir.history":
12155
12156type ProjectsLocationsDatasetsFhirStoresFhirHistoryCall struct {
12157	s            *Service
12158	name         string
12159	urlParams_   gensupport.URLParams
12160	ifNoneMatch_ string
12161	ctx_         context.Context
12162	header_      http.Header
12163}
12164
12165// History: Lists all the versions of a resource (including the current
12166// version and
12167// deleted versions) from the FHIR store.
12168//
12169// Implements the per-resource form of the FHIR standard
12170// [history
12171// interaction](http://hl7.org/implement/standards/fhir/STU3/htt
12172// p.html#history).
12173//
12174// On success, the response body will contain a JSON-encoded
12175// representation
12176// of a `Bundle` resource of type `history`, containing the version
12177// history
12178// sorted from most recent to oldest versions.
12179// Errors generated by the FHIR store will contain a
12180// JSON-encoded
12181// `OperationOutcome` resource describing the reason for the error. If
12182// the
12183// request cannot be mapped to a valid API method on a FHIR store, a
12184// generic
12185// GCP error might be returned instead.
12186func (r *ProjectsLocationsDatasetsFhirStoresFhirService) History(name string) *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall {
12187	c := &ProjectsLocationsDatasetsFhirStoresFhirHistoryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12188	c.name = name
12189	return c
12190}
12191
12192// At sets the optional parameter "at": Only include resource versions
12193// that were current at some point during the
12194// time period specified in the date time value. The date parameter
12195// format is
12196// yyyy-mm-ddThh:mm:ss[Z|(+|-)hh:mm]
12197//
12198// Clients may specify any of the following:
12199//
12200// *  An entire year: `_at=2019`
12201// *  An entire month: `_at=2019-01`
12202// *  A specific day: `_at=2019-01-20`
12203// *  A specific second: `_at=2018-12-31T23:59:58Z`
12204func (c *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall) At(at string) *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall {
12205	c.urlParams_.Set("at", at)
12206	return c
12207}
12208
12209// Count sets the optional parameter "count": The maximum number of
12210// search results on a page. Defaults to 1000.
12211func (c *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall) Count(count int64) *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall {
12212	c.urlParams_.Set("count", fmt.Sprint(count))
12213	return c
12214}
12215
12216// Page sets the optional parameter "page": Used to retrieve the first,
12217// previous, next, or last page of resource
12218// versions when using pagination. Value should be set to the value of
12219// the
12220// `link.url` field returned in the response to the previous request,
12221// where
12222// `link.relation` is "first", "previous", "next" or "last".
12223//
12224// Omit `page` if no previous request has been made.
12225func (c *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall) Page(page string) *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall {
12226	c.urlParams_.Set("page", page)
12227	return c
12228}
12229
12230// Since sets the optional parameter "since": Only include resource
12231// versions that were created at or after the given
12232// instant in time. The instant in time uses the
12233// format
12234// YYYY-MM-DDThh:mm:ss.sss+zz:zz (for example
12235// 2015-02-07T13:28:17.239+02:00 or
12236// 2017-01-01T00:00:00Z). The time must be specified to the second
12237// and
12238// include a time zone.
12239func (c *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall) Since(since string) *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall {
12240	c.urlParams_.Set("since", since)
12241	return c
12242}
12243
12244// Fields allows partial responses to be retrieved. See
12245// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12246// for more information.
12247func (c *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall {
12248	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12249	return c
12250}
12251
12252// IfNoneMatch sets the optional parameter which makes the operation
12253// fail if the object's ETag matches the given value. This is useful for
12254// getting updates only after the object has changed since the last
12255// request. Use googleapi.IsNotModified to check whether the response
12256// error from Do is the result of In-None-Match.
12257func (c *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall {
12258	c.ifNoneMatch_ = entityTag
12259	return c
12260}
12261
12262// Context sets the context to be used in this call's Do method. Any
12263// pending HTTP request will be aborted if the provided context is
12264// canceled.
12265func (c *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall {
12266	c.ctx_ = ctx
12267	return c
12268}
12269
12270// Header returns an http.Header that can be modified by the caller to
12271// add HTTP headers to the request.
12272func (c *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall) Header() http.Header {
12273	if c.header_ == nil {
12274		c.header_ = make(http.Header)
12275	}
12276	return c.header_
12277}
12278
12279func (c *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall) doRequest(alt string) (*http.Response, error) {
12280	reqHeaders := make(http.Header)
12281	for k, v := range c.header_ {
12282		reqHeaders[k] = v
12283	}
12284	reqHeaders.Set("User-Agent", c.s.userAgent())
12285	if c.ifNoneMatch_ != "" {
12286		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
12287	}
12288	var body io.Reader = nil
12289	c.urlParams_.Set("alt", alt)
12290	c.urlParams_.Set("prettyPrint", "false")
12291	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}/_history")
12292	urls += "?" + c.urlParams_.Encode()
12293	req, err := http.NewRequest("GET", urls, body)
12294	if err != nil {
12295		return nil, err
12296	}
12297	req.Header = reqHeaders
12298	googleapi.Expand(req.URL, map[string]string{
12299		"name": c.name,
12300	})
12301	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12302}
12303
12304// Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.history" call.
12305func (c *ProjectsLocationsDatasetsFhirStoresFhirHistoryCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
12306	gensupport.SetOptions(c.urlParams_, opts...)
12307	return c.doRequest("")
12308	// {
12309	//   "description": "Lists all the versions of a resource (including the current version and\ndeleted versions) from the FHIR store.\n\nImplements the per-resource form of the FHIR standard [history\ninteraction](http://hl7.org/implement/standards/fhir/STU3/http.html#history).\n\nOn success, the response body will contain a JSON-encoded representation\nof a `Bundle` resource of type `history`, containing the version history\nsorted from most recent to oldest versions.\nErrors generated by the FHIR store will contain a JSON-encoded\n`OperationOutcome` resource describing the reason for the error. If the\nrequest cannot be mapped to a valid API method on a FHIR store, a generic\nGCP error might be returned instead.",
12310	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/fhir/{fhirId}/{fhirId1}/_history",
12311	//   "httpMethod": "GET",
12312	//   "id": "healthcare.projects.locations.datasets.fhirStores.fhir.history",
12313	//   "parameterOrder": [
12314	//     "name"
12315	//   ],
12316	//   "parameters": {
12317	//     "at": {
12318	//       "description": "Only include resource versions that were current at some point during the\ntime period specified in the date time value. The date parameter format is\nyyyy-mm-ddThh:mm:ss[Z|(+|-)hh:mm]\n\nClients may specify any of the following:\n\n*  An entire year: `_at=2019`\n*  An entire month: `_at=2019-01`\n*  A specific day: `_at=2019-01-20`\n*  A specific second: `_at=2018-12-31T23:59:58Z`",
12319	//       "location": "query",
12320	//       "type": "string"
12321	//     },
12322	//     "count": {
12323	//       "description": "The maximum number of search results on a page. Defaults to 1000.",
12324	//       "format": "int32",
12325	//       "location": "query",
12326	//       "type": "integer"
12327	//     },
12328	//     "name": {
12329	//       "description": "The name of the resource to retrieve.",
12330	//       "location": "path",
12331	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/fhir/[^/]+/[^/]+$",
12332	//       "required": true,
12333	//       "type": "string"
12334	//     },
12335	//     "page": {
12336	//       "description": "Used to retrieve the first, previous, next, or last page of resource\nversions when using pagination. Value should be set to the value of the\n`link.url` field returned in the response to the previous request, where\n`link.relation` is \"first\", \"previous\", \"next\" or \"last\".\n\nOmit `page` if no previous request has been made.",
12337	//       "location": "query",
12338	//       "type": "string"
12339	//     },
12340	//     "since": {
12341	//       "description": "Only include resource versions that were created at or after the given\ninstant in time. The instant in time uses the format\nYYYY-MM-DDThh:mm:ss.sss+zz:zz (for example 2015-02-07T13:28:17.239+02:00 or\n2017-01-01T00:00:00Z). The time must be specified to the second and\ninclude a time zone.",
12342	//       "location": "query",
12343	//       "type": "string"
12344	//     }
12345	//   },
12346	//   "path": "v1beta1/{+name}/_history",
12347	//   "response": {
12348	//     "$ref": "HttpBody"
12349	//   },
12350	//   "scopes": [
12351	//     "https://www.googleapis.com/auth/cloud-platform"
12352	//   ]
12353	// }
12354
12355}
12356
12357// method id "healthcare.projects.locations.datasets.fhirStores.fhir.patch":
12358
12359type ProjectsLocationsDatasetsFhirStoresFhirPatchCall struct {
12360	s          *Service
12361	name       string
12362	body_      io.Reader
12363	urlParams_ gensupport.URLParams
12364	ctx_       context.Context
12365	header_    http.Header
12366}
12367
12368// Patch: Updates part of an existing resource by applying the
12369// operations specified
12370// in a [JSON Patch](http://jsonpatch.com/) document.
12371//
12372// Implements the FHIR standard
12373// [patch
12374// interaction](http://hl7.org/implement/standards/fhir/STU3/http.
12375// html#patch).
12376//
12377// The request body must contain a JSON Patch document, and the
12378// request
12379// headers must contain `Content-Type: application/json-patch+json`.
12380//
12381// On success, the response body will contain a JSON-encoded
12382// representation
12383// of the updated resource, including the server-assigned version
12384// ID.
12385// Errors generated by the FHIR store will contain a
12386// JSON-encoded
12387// `OperationOutcome` resource describing the reason for the error. If
12388// the
12389// request cannot be mapped to a valid API method on a FHIR store, a
12390// generic
12391// GCP error might be returned instead.
12392func (r *ProjectsLocationsDatasetsFhirStoresFhirService) Patch(name string, body_ io.Reader) *ProjectsLocationsDatasetsFhirStoresFhirPatchCall {
12393	c := &ProjectsLocationsDatasetsFhirStoresFhirPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12394	c.name = name
12395	c.body_ = body_
12396	return c
12397}
12398
12399// Fields allows partial responses to be retrieved. See
12400// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12401// for more information.
12402func (c *ProjectsLocationsDatasetsFhirStoresFhirPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirPatchCall {
12403	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12404	return c
12405}
12406
12407// Context sets the context to be used in this call's Do method. Any
12408// pending HTTP request will be aborted if the provided context is
12409// canceled.
12410func (c *ProjectsLocationsDatasetsFhirStoresFhirPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirPatchCall {
12411	c.ctx_ = ctx
12412	return c
12413}
12414
12415// Header returns an http.Header that can be modified by the caller to
12416// add HTTP headers to the request.
12417func (c *ProjectsLocationsDatasetsFhirStoresFhirPatchCall) Header() http.Header {
12418	if c.header_ == nil {
12419		c.header_ = make(http.Header)
12420	}
12421	return c.header_
12422}
12423
12424func (c *ProjectsLocationsDatasetsFhirStoresFhirPatchCall) doRequest(alt string) (*http.Response, error) {
12425	reqHeaders := make(http.Header)
12426	for k, v := range c.header_ {
12427		reqHeaders[k] = v
12428	}
12429	reqHeaders.Set("User-Agent", c.s.userAgent())
12430	var body io.Reader = nil
12431	body = c.body_
12432	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
12433	urls += "?" + c.urlParams_.Encode()
12434	req, err := http.NewRequest("PATCH", urls, body)
12435	if err != nil {
12436		return nil, err
12437	}
12438	req.Header = reqHeaders
12439	googleapi.Expand(req.URL, map[string]string{
12440		"name": c.name,
12441	})
12442	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12443}
12444
12445// Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.patch" call.
12446func (c *ProjectsLocationsDatasetsFhirStoresFhirPatchCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
12447	gensupport.SetOptions(c.urlParams_, opts...)
12448	return c.doRequest("")
12449	// {
12450	//   "description": "Updates part of an existing resource by applying the operations specified\nin a [JSON Patch](http://jsonpatch.com/) document.\n\nImplements the FHIR standard [patch\ninteraction](http://hl7.org/implement/standards/fhir/STU3/http.html#patch).\n\nThe request body must contain a JSON Patch document, and the request\nheaders must contain `Content-Type: application/json-patch+json`.\n\nOn success, the response body will contain a JSON-encoded representation\nof the updated resource, including the server-assigned version ID.\nErrors generated by the FHIR store will contain a JSON-encoded\n`OperationOutcome` resource describing the reason for the error. If the\nrequest cannot be mapped to a valid API method on a FHIR store, a generic\nGCP error might be returned instead.",
12451	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/fhir/{fhirId}/{fhirId1}",
12452	//   "httpMethod": "PATCH",
12453	//   "id": "healthcare.projects.locations.datasets.fhirStores.fhir.patch",
12454	//   "parameterOrder": [
12455	//     "name"
12456	//   ],
12457	//   "parameters": {
12458	//     "name": {
12459	//       "description": "The name of the resource to update.",
12460	//       "location": "path",
12461	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/fhir/[^/]+/[^/]+$",
12462	//       "required": true,
12463	//       "type": "string"
12464	//     }
12465	//   },
12466	//   "path": "v1beta1/{+name}",
12467	//   "request": {
12468	//     "$ref": "HttpBody"
12469	//   },
12470	//   "response": {
12471	//     "$ref": "HttpBody"
12472	//   },
12473	//   "scopes": [
12474	//     "https://www.googleapis.com/auth/cloud-platform"
12475	//   ]
12476	// }
12477
12478}
12479
12480// method id "healthcare.projects.locations.datasets.fhirStores.fhir.read":
12481
12482type ProjectsLocationsDatasetsFhirStoresFhirReadCall struct {
12483	s            *Service
12484	name         string
12485	urlParams_   gensupport.URLParams
12486	ifNoneMatch_ string
12487	ctx_         context.Context
12488	header_      http.Header
12489}
12490
12491// Read: Gets the contents of a FHIR resource.
12492//
12493// Implements the FHIR standard
12494// [read
12495// interaction](http://hl7.org/implement/standards/fhir/STU3/http.h
12496// tml#read).
12497//
12498// Also supports the FHIR standard [conditional
12499// read
12500// interaction](http://hl7.org/implement/standards/fhir/STU3/http.ht
12501// ml#cread)
12502// specified by supplying an `If-Modified-Since` header with a date/time
12503// value
12504// or an `If-None-Match` header with an ETag value.
12505//
12506// On success, the response body will contain a JSON-encoded
12507// representation
12508// of the resource.
12509// Errors generated by the FHIR store will contain a
12510// JSON-encoded
12511// `OperationOutcome` resource describing the reason for the error. If
12512// the
12513// request cannot be mapped to a valid API method on a FHIR store, a
12514// generic
12515// GCP error might be returned instead.
12516func (r *ProjectsLocationsDatasetsFhirStoresFhirService) Read(name string) *ProjectsLocationsDatasetsFhirStoresFhirReadCall {
12517	c := &ProjectsLocationsDatasetsFhirStoresFhirReadCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12518	c.name = name
12519	return c
12520}
12521
12522// Fields allows partial responses to be retrieved. See
12523// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12524// for more information.
12525func (c *ProjectsLocationsDatasetsFhirStoresFhirReadCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirReadCall {
12526	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12527	return c
12528}
12529
12530// IfNoneMatch sets the optional parameter which makes the operation
12531// fail if the object's ETag matches the given value. This is useful for
12532// getting updates only after the object has changed since the last
12533// request. Use googleapi.IsNotModified to check whether the response
12534// error from Do is the result of In-None-Match.
12535func (c *ProjectsLocationsDatasetsFhirStoresFhirReadCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresFhirReadCall {
12536	c.ifNoneMatch_ = entityTag
12537	return c
12538}
12539
12540// Context sets the context to be used in this call's Do method. Any
12541// pending HTTP request will be aborted if the provided context is
12542// canceled.
12543func (c *ProjectsLocationsDatasetsFhirStoresFhirReadCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirReadCall {
12544	c.ctx_ = ctx
12545	return c
12546}
12547
12548// Header returns an http.Header that can be modified by the caller to
12549// add HTTP headers to the request.
12550func (c *ProjectsLocationsDatasetsFhirStoresFhirReadCall) Header() http.Header {
12551	if c.header_ == nil {
12552		c.header_ = make(http.Header)
12553	}
12554	return c.header_
12555}
12556
12557func (c *ProjectsLocationsDatasetsFhirStoresFhirReadCall) doRequest(alt string) (*http.Response, error) {
12558	reqHeaders := make(http.Header)
12559	for k, v := range c.header_ {
12560		reqHeaders[k] = v
12561	}
12562	reqHeaders.Set("User-Agent", c.s.userAgent())
12563	if c.ifNoneMatch_ != "" {
12564		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
12565	}
12566	var body io.Reader = nil
12567	c.urlParams_.Set("alt", alt)
12568	c.urlParams_.Set("prettyPrint", "false")
12569	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
12570	urls += "?" + c.urlParams_.Encode()
12571	req, err := http.NewRequest("GET", urls, body)
12572	if err != nil {
12573		return nil, err
12574	}
12575	req.Header = reqHeaders
12576	googleapi.Expand(req.URL, map[string]string{
12577		"name": c.name,
12578	})
12579	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12580}
12581
12582// Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.read" call.
12583func (c *ProjectsLocationsDatasetsFhirStoresFhirReadCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
12584	gensupport.SetOptions(c.urlParams_, opts...)
12585	return c.doRequest("")
12586	// {
12587	//   "description": "Gets the contents of a FHIR resource.\n\nImplements the FHIR standard [read\ninteraction](http://hl7.org/implement/standards/fhir/STU3/http.html#read).\n\nAlso supports the FHIR standard [conditional read\ninteraction](http://hl7.org/implement/standards/fhir/STU3/http.html#cread)\nspecified by supplying an `If-Modified-Since` header with a date/time value\nor an `If-None-Match` header with an ETag value.\n\nOn success, the response body will contain a JSON-encoded representation\nof the resource.\nErrors generated by the FHIR store will contain a JSON-encoded\n`OperationOutcome` resource describing the reason for the error. If the\nrequest cannot be mapped to a valid API method on a FHIR store, a generic\nGCP error might be returned instead.",
12588	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/fhir/{fhirId}/{fhirId1}",
12589	//   "httpMethod": "GET",
12590	//   "id": "healthcare.projects.locations.datasets.fhirStores.fhir.read",
12591	//   "parameterOrder": [
12592	//     "name"
12593	//   ],
12594	//   "parameters": {
12595	//     "name": {
12596	//       "description": "The name of the resource to retrieve.",
12597	//       "location": "path",
12598	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/fhir/[^/]+/[^/]+$",
12599	//       "required": true,
12600	//       "type": "string"
12601	//     }
12602	//   },
12603	//   "path": "v1beta1/{+name}",
12604	//   "response": {
12605	//     "$ref": "HttpBody"
12606	//   },
12607	//   "scopes": [
12608	//     "https://www.googleapis.com/auth/cloud-platform"
12609	//   ]
12610	// }
12611
12612}
12613
12614// method id "healthcare.projects.locations.datasets.fhirStores.fhir.search":
12615
12616type ProjectsLocationsDatasetsFhirStoresFhirSearchCall struct {
12617	s                      *Service
12618	parent                 string
12619	searchresourcesrequest *SearchResourcesRequest
12620	urlParams_             gensupport.URLParams
12621	ctx_                   context.Context
12622	header_                http.Header
12623}
12624
12625// Search: Searches for resources in the given FHIR store according to
12626// criteria
12627// specified as query parameters.
12628//
12629// Implements the FHIR standard
12630// [search
12631// interaction](http://hl7.org/implement/standards/fhir/STU3/http
12632// .html#search)
12633// using the search semantics described in the [FHIR
12634// Search
12635// specification](http://hl7.org/implement/standards/fhir/STU3/sea
12636// rch.html).
12637//
12638// Supports three methods of search defined by the specification:
12639//
12640// *  `GET [base]?[parameters]` to search across all resources.
12641// *  `GET [base]/[type]?[parameters]` to search resources of a
12642// specified
12643// type.
12644// *  `POST [base]/[type]/_search?[parameters]` as an alternate form
12645// having
12646// the same semantics as the `GET` method.
12647//
12648// The `GET` methods do not support compartment searches. The `POST`
12649// method
12650// does not support `application/x-www-form-urlencoded` search
12651// parameters.
12652//
12653// On success, the response body will contain a JSON-encoded
12654// representation
12655// of a `Bundle` resource of type `searchset`, containing the results of
12656// the
12657// search.
12658// Errors generated by the FHIR store will contain a
12659// JSON-encoded
12660// `OperationOutcome` resource describing the reason for the error. If
12661// the
12662// request cannot be mapped to a valid API method on a FHIR store, a
12663// generic
12664// GCP error might be returned instead.
12665//
12666// The server's capability statement, retrieved through
12667// capabilities, indicates what search parameters
12668// are supported on each FHIR resource. A list of all search
12669// parameters
12670// defined by the specification can be found in the [FHIR Search
12671// Parameter
12672// Registry](http://hl7.org/implement/standards/fhir/STU3/searc
12673// hparameter-registry.html).
12674//
12675// Supported search modifiers: `:missing`, `:exact`, `:contains`,
12676// `:text`,
12677// `:in`, `:not-in`, `:above`, `:below`, `:[type]`, `:not`, and
12678// `:recurse`.
12679//
12680// Supported search result parameters: `_sort`, `_count`,
12681// `_include`,
12682// `_revinclude`, `_summary=text`, `_summary=data`, and
12683// `_elements`.
12684//
12685// The maximum number of search results returned defaults to 100, which
12686// can
12687// be overridden by the `_count` parameter up to a maximum limit of
12688// 1000. If
12689// there are additional results, the returned `Bundle` will
12690// contain
12691// pagination links.
12692func (r *ProjectsLocationsDatasetsFhirStoresFhirService) Search(parent string, searchresourcesrequest *SearchResourcesRequest) *ProjectsLocationsDatasetsFhirStoresFhirSearchCall {
12693	c := &ProjectsLocationsDatasetsFhirStoresFhirSearchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12694	c.parent = parent
12695	c.searchresourcesrequest = searchresourcesrequest
12696	return c
12697}
12698
12699// Fields allows partial responses to be retrieved. See
12700// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12701// for more information.
12702func (c *ProjectsLocationsDatasetsFhirStoresFhirSearchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirSearchCall {
12703	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12704	return c
12705}
12706
12707// Context sets the context to be used in this call's Do method. Any
12708// pending HTTP request will be aborted if the provided context is
12709// canceled.
12710func (c *ProjectsLocationsDatasetsFhirStoresFhirSearchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirSearchCall {
12711	c.ctx_ = ctx
12712	return c
12713}
12714
12715// Header returns an http.Header that can be modified by the caller to
12716// add HTTP headers to the request.
12717func (c *ProjectsLocationsDatasetsFhirStoresFhirSearchCall) Header() http.Header {
12718	if c.header_ == nil {
12719		c.header_ = make(http.Header)
12720	}
12721	return c.header_
12722}
12723
12724func (c *ProjectsLocationsDatasetsFhirStoresFhirSearchCall) doRequest(alt string) (*http.Response, error) {
12725	reqHeaders := make(http.Header)
12726	for k, v := range c.header_ {
12727		reqHeaders[k] = v
12728	}
12729	reqHeaders.Set("User-Agent", c.s.userAgent())
12730	var body io.Reader = nil
12731	body, err := googleapi.WithoutDataWrapper.JSONReader(c.searchresourcesrequest)
12732	if err != nil {
12733		return nil, err
12734	}
12735	reqHeaders.Set("Content-Type", "application/json")
12736	c.urlParams_.Set("alt", alt)
12737	c.urlParams_.Set("prettyPrint", "false")
12738	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/fhir/_search")
12739	urls += "?" + c.urlParams_.Encode()
12740	req, err := http.NewRequest("POST", urls, body)
12741	if err != nil {
12742		return nil, err
12743	}
12744	req.Header = reqHeaders
12745	googleapi.Expand(req.URL, map[string]string{
12746		"parent": c.parent,
12747	})
12748	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12749}
12750
12751// Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.search" call.
12752func (c *ProjectsLocationsDatasetsFhirStoresFhirSearchCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
12753	gensupport.SetOptions(c.urlParams_, opts...)
12754	return c.doRequest("")
12755	// {
12756	//   "description": "Searches for resources in the given FHIR store according to criteria\nspecified as query parameters.\n\nImplements the FHIR standard [search\ninteraction](http://hl7.org/implement/standards/fhir/STU3/http.html#search)\nusing the search semantics described in the [FHIR Search\nspecification](http://hl7.org/implement/standards/fhir/STU3/search.html).\n\nSupports three methods of search defined by the specification:\n\n*  `GET [base]?[parameters]` to search across all resources.\n*  `GET [base]/[type]?[parameters]` to search resources of a specified\ntype.\n*  `POST [base]/[type]/_search?[parameters]` as an alternate form having\nthe same semantics as the `GET` method.\n\nThe `GET` methods do not support compartment searches. The `POST` method\ndoes not support `application/x-www-form-urlencoded` search parameters.\n\nOn success, the response body will contain a JSON-encoded representation\nof a `Bundle` resource of type `searchset`, containing the results of the\nsearch.\nErrors generated by the FHIR store will contain a JSON-encoded\n`OperationOutcome` resource describing the reason for the error. If the\nrequest cannot be mapped to a valid API method on a FHIR store, a generic\nGCP error might be returned instead.\n\nThe server's capability statement, retrieved through\ncapabilities, indicates what search parameters\nare supported on each FHIR resource. A list of all search parameters\ndefined by the specification can be found in the [FHIR Search Parameter\nRegistry](http://hl7.org/implement/standards/fhir/STU3/searchparameter-registry.html).\n\nSupported search modifiers: `:missing`, `:exact`, `:contains`, `:text`,\n`:in`, `:not-in`, `:above`, `:below`, `:[type]`, `:not`, and `:recurse`.\n\nSupported search result parameters: `_sort`, `_count`, `_include`,\n`_revinclude`, `_summary=text`, `_summary=data`, and `_elements`.\n\nThe maximum number of search results returned defaults to 100, which can\nbe overridden by the `_count` parameter up to a maximum limit of 1000. If\nthere are additional results, the returned `Bundle` will contain\npagination links.",
12757	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/fhir/_search",
12758	//   "httpMethod": "POST",
12759	//   "id": "healthcare.projects.locations.datasets.fhirStores.fhir.search",
12760	//   "parameterOrder": [
12761	//     "parent"
12762	//   ],
12763	//   "parameters": {
12764	//     "parent": {
12765	//       "description": "Name of the FHIR store to retrieve resources from.",
12766	//       "location": "path",
12767	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+$",
12768	//       "required": true,
12769	//       "type": "string"
12770	//     }
12771	//   },
12772	//   "path": "v1beta1/{+parent}/fhir/_search",
12773	//   "request": {
12774	//     "$ref": "SearchResourcesRequest"
12775	//   },
12776	//   "response": {
12777	//     "$ref": "HttpBody"
12778	//   },
12779	//   "scopes": [
12780	//     "https://www.googleapis.com/auth/cloud-platform"
12781	//   ]
12782	// }
12783
12784}
12785
12786// method id "healthcare.projects.locations.datasets.fhirStores.fhir.update":
12787
12788type ProjectsLocationsDatasetsFhirStoresFhirUpdateCall struct {
12789	s          *Service
12790	name       string
12791	body_      io.Reader
12792	urlParams_ gensupport.URLParams
12793	ctx_       context.Context
12794	header_    http.Header
12795}
12796
12797// Update: Updates the entire contents of a resource.
12798//
12799// Implements the FHIR standard
12800// [update
12801// interaction](http://hl7.org/implement/standards/fhir/STU3/http
12802// .html#update).
12803//
12804// If the specified resource does
12805// not exist and the FHIR store has
12806// enable_update_create set, creates the
12807// resource with the client-specified ID.
12808//
12809// The request body must contain a JSON-encoded FHIR resource, and the
12810// request
12811// headers must contain `Content-Type: application/fhir+json`. The
12812// resource
12813// must contain an `id` element having an identical value to the ID in
12814// the
12815// REST path of the request.
12816//
12817// On success, the response body will contain a JSON-encoded
12818// representation
12819// of the updated resource, including the server-assigned version
12820// ID.
12821// Errors generated by the FHIR store will contain a
12822// JSON-encoded
12823// `OperationOutcome` resource describing the reason for the error. If
12824// the
12825// request cannot be mapped to a valid API method on a FHIR store, a
12826// generic
12827// GCP error might be returned instead.
12828func (r *ProjectsLocationsDatasetsFhirStoresFhirService) Update(name string, body_ io.Reader) *ProjectsLocationsDatasetsFhirStoresFhirUpdateCall {
12829	c := &ProjectsLocationsDatasetsFhirStoresFhirUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12830	c.name = name
12831	c.body_ = body_
12832	return c
12833}
12834
12835// Fields allows partial responses to be retrieved. See
12836// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12837// for more information.
12838func (c *ProjectsLocationsDatasetsFhirStoresFhirUpdateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirUpdateCall {
12839	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12840	return c
12841}
12842
12843// Context sets the context to be used in this call's Do method. Any
12844// pending HTTP request will be aborted if the provided context is
12845// canceled.
12846func (c *ProjectsLocationsDatasetsFhirStoresFhirUpdateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirUpdateCall {
12847	c.ctx_ = ctx
12848	return c
12849}
12850
12851// Header returns an http.Header that can be modified by the caller to
12852// add HTTP headers to the request.
12853func (c *ProjectsLocationsDatasetsFhirStoresFhirUpdateCall) Header() http.Header {
12854	if c.header_ == nil {
12855		c.header_ = make(http.Header)
12856	}
12857	return c.header_
12858}
12859
12860func (c *ProjectsLocationsDatasetsFhirStoresFhirUpdateCall) doRequest(alt string) (*http.Response, error) {
12861	reqHeaders := make(http.Header)
12862	for k, v := range c.header_ {
12863		reqHeaders[k] = v
12864	}
12865	reqHeaders.Set("User-Agent", c.s.userAgent())
12866	var body io.Reader = nil
12867	body = c.body_
12868	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
12869	urls += "?" + c.urlParams_.Encode()
12870	req, err := http.NewRequest("PUT", urls, body)
12871	if err != nil {
12872		return nil, err
12873	}
12874	req.Header = reqHeaders
12875	googleapi.Expand(req.URL, map[string]string{
12876		"name": c.name,
12877	})
12878	return gensupport.SendRequest(c.ctx_, c.s.client, req)
12879}
12880
12881// Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.update" call.
12882func (c *ProjectsLocationsDatasetsFhirStoresFhirUpdateCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
12883	gensupport.SetOptions(c.urlParams_, opts...)
12884	return c.doRequest("")
12885	// {
12886	//   "description": "Updates the entire contents of a resource.\n\nImplements the FHIR standard [update\ninteraction](http://hl7.org/implement/standards/fhir/STU3/http.html#update).\n\nIf the specified resource does\nnot exist and the FHIR store has\nenable_update_create set, creates the\nresource with the client-specified ID.\n\nThe request body must contain a JSON-encoded FHIR resource, and the request\nheaders must contain `Content-Type: application/fhir+json`. The resource\nmust contain an `id` element having an identical value to the ID in the\nREST path of the request.\n\nOn success, the response body will contain a JSON-encoded representation\nof the updated resource, including the server-assigned version ID.\nErrors generated by the FHIR store will contain a JSON-encoded\n`OperationOutcome` resource describing the reason for the error. If the\nrequest cannot be mapped to a valid API method on a FHIR store, a generic\nGCP error might be returned instead.",
12887	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/fhir/{fhirId}/{fhirId1}",
12888	//   "httpMethod": "PUT",
12889	//   "id": "healthcare.projects.locations.datasets.fhirStores.fhir.update",
12890	//   "parameterOrder": [
12891	//     "name"
12892	//   ],
12893	//   "parameters": {
12894	//     "name": {
12895	//       "description": "The name of the resource to update.",
12896	//       "location": "path",
12897	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/fhir/[^/]+/[^/]+$",
12898	//       "required": true,
12899	//       "type": "string"
12900	//     }
12901	//   },
12902	//   "path": "v1beta1/{+name}",
12903	//   "request": {
12904	//     "$ref": "HttpBody"
12905	//   },
12906	//   "response": {
12907	//     "$ref": "HttpBody"
12908	//   },
12909	//   "scopes": [
12910	//     "https://www.googleapis.com/auth/cloud-platform"
12911	//   ]
12912	// }
12913
12914}
12915
12916// method id "healthcare.projects.locations.datasets.fhirStores.fhir.vread":
12917
12918type ProjectsLocationsDatasetsFhirStoresFhirVreadCall struct {
12919	s            *Service
12920	name         string
12921	urlParams_   gensupport.URLParams
12922	ifNoneMatch_ string
12923	ctx_         context.Context
12924	header_      http.Header
12925}
12926
12927// Vread: Gets the contents of a version (current or historical) of a
12928// FHIR resource
12929// by version ID.
12930//
12931// Implements the FHIR standard
12932// [vread
12933// interaction](http://hl7.org/implement/standards/fhir/STU3/http.
12934// html#vread).
12935//
12936// On success, the response body will contain a JSON-encoded
12937// representation
12938// of the resource.
12939// Errors generated by the FHIR store will contain a
12940// JSON-encoded
12941// `OperationOutcome` resource describing the reason for the error. If
12942// the
12943// request cannot be mapped to a valid API method on a FHIR store, a
12944// generic
12945// GCP error might be returned instead.
12946func (r *ProjectsLocationsDatasetsFhirStoresFhirService) Vread(name string) *ProjectsLocationsDatasetsFhirStoresFhirVreadCall {
12947	c := &ProjectsLocationsDatasetsFhirStoresFhirVreadCall{s: r.s, urlParams_: make(gensupport.URLParams)}
12948	c.name = name
12949	return c
12950}
12951
12952// Fields allows partial responses to be retrieved. See
12953// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
12954// for more information.
12955func (c *ProjectsLocationsDatasetsFhirStoresFhirVreadCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsFhirStoresFhirVreadCall {
12956	c.urlParams_.Set("fields", googleapi.CombineFields(s))
12957	return c
12958}
12959
12960// IfNoneMatch sets the optional parameter which makes the operation
12961// fail if the object's ETag matches the given value. This is useful for
12962// getting updates only after the object has changed since the last
12963// request. Use googleapi.IsNotModified to check whether the response
12964// error from Do is the result of In-None-Match.
12965func (c *ProjectsLocationsDatasetsFhirStoresFhirVreadCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsFhirStoresFhirVreadCall {
12966	c.ifNoneMatch_ = entityTag
12967	return c
12968}
12969
12970// Context sets the context to be used in this call's Do method. Any
12971// pending HTTP request will be aborted if the provided context is
12972// canceled.
12973func (c *ProjectsLocationsDatasetsFhirStoresFhirVreadCall) Context(ctx context.Context) *ProjectsLocationsDatasetsFhirStoresFhirVreadCall {
12974	c.ctx_ = ctx
12975	return c
12976}
12977
12978// Header returns an http.Header that can be modified by the caller to
12979// add HTTP headers to the request.
12980func (c *ProjectsLocationsDatasetsFhirStoresFhirVreadCall) Header() http.Header {
12981	if c.header_ == nil {
12982		c.header_ = make(http.Header)
12983	}
12984	return c.header_
12985}
12986
12987func (c *ProjectsLocationsDatasetsFhirStoresFhirVreadCall) doRequest(alt string) (*http.Response, error) {
12988	reqHeaders := make(http.Header)
12989	for k, v := range c.header_ {
12990		reqHeaders[k] = v
12991	}
12992	reqHeaders.Set("User-Agent", c.s.userAgent())
12993	if c.ifNoneMatch_ != "" {
12994		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
12995	}
12996	var body io.Reader = nil
12997	c.urlParams_.Set("alt", alt)
12998	c.urlParams_.Set("prettyPrint", "false")
12999	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
13000	urls += "?" + c.urlParams_.Encode()
13001	req, err := http.NewRequest("GET", urls, body)
13002	if err != nil {
13003		return nil, err
13004	}
13005	req.Header = reqHeaders
13006	googleapi.Expand(req.URL, map[string]string{
13007		"name": c.name,
13008	})
13009	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13010}
13011
13012// Do executes the "healthcare.projects.locations.datasets.fhirStores.fhir.vread" call.
13013func (c *ProjectsLocationsDatasetsFhirStoresFhirVreadCall) Do(opts ...googleapi.CallOption) (*http.Response, error) {
13014	gensupport.SetOptions(c.urlParams_, opts...)
13015	return c.doRequest("")
13016	// {
13017	//   "description": "Gets the contents of a version (current or historical) of a FHIR resource\nby version ID.\n\nImplements the FHIR standard [vread\ninteraction](http://hl7.org/implement/standards/fhir/STU3/http.html#vread).\n\nOn success, the response body will contain a JSON-encoded representation\nof the resource.\nErrors generated by the FHIR store will contain a JSON-encoded\n`OperationOutcome` resource describing the reason for the error. If the\nrequest cannot be mapped to a valid API method on a FHIR store, a generic\nGCP error might be returned instead.",
13018	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/fhirStores/{fhirStoresId}/fhir/{fhirId}/{fhirId1}/_history/{_historyId}",
13019	//   "httpMethod": "GET",
13020	//   "id": "healthcare.projects.locations.datasets.fhirStores.fhir.vread",
13021	//   "parameterOrder": [
13022	//     "name"
13023	//   ],
13024	//   "parameters": {
13025	//     "name": {
13026	//       "description": "The name of the resource version to retrieve.",
13027	//       "location": "path",
13028	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/fhirStores/[^/]+/fhir/[^/]+/[^/]+/_history/[^/]+$",
13029	//       "required": true,
13030	//       "type": "string"
13031	//     }
13032	//   },
13033	//   "path": "v1beta1/{+name}",
13034	//   "response": {
13035	//     "$ref": "HttpBody"
13036	//   },
13037	//   "scopes": [
13038	//     "https://www.googleapis.com/auth/cloud-platform"
13039	//   ]
13040	// }
13041
13042}
13043
13044// method id "healthcare.projects.locations.datasets.hl7V2Stores.create":
13045
13046type ProjectsLocationsDatasetsHl7V2StoresCreateCall struct {
13047	s          *Service
13048	parent     string
13049	hl7v2store *Hl7V2Store
13050	urlParams_ gensupport.URLParams
13051	ctx_       context.Context
13052	header_    http.Header
13053}
13054
13055// Create: Creates a new HL7v2 store within the parent dataset.
13056func (r *ProjectsLocationsDatasetsHl7V2StoresService) Create(parent string, hl7v2store *Hl7V2Store) *ProjectsLocationsDatasetsHl7V2StoresCreateCall {
13057	c := &ProjectsLocationsDatasetsHl7V2StoresCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13058	c.parent = parent
13059	c.hl7v2store = hl7v2store
13060	return c
13061}
13062
13063// Hl7V2StoreId sets the optional parameter "hl7V2StoreId": The ID of
13064// the HL7v2 store that is being created.
13065// The string must match the following regex:
13066// `[\p{L}\p{N}_\-\.]{1,256}`.
13067func (c *ProjectsLocationsDatasetsHl7V2StoresCreateCall) Hl7V2StoreId(hl7V2StoreId string) *ProjectsLocationsDatasetsHl7V2StoresCreateCall {
13068	c.urlParams_.Set("hl7V2StoreId", hl7V2StoreId)
13069	return c
13070}
13071
13072// Fields allows partial responses to be retrieved. See
13073// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13074// for more information.
13075func (c *ProjectsLocationsDatasetsHl7V2StoresCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresCreateCall {
13076	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13077	return c
13078}
13079
13080// Context sets the context to be used in this call's Do method. Any
13081// pending HTTP request will be aborted if the provided context is
13082// canceled.
13083func (c *ProjectsLocationsDatasetsHl7V2StoresCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresCreateCall {
13084	c.ctx_ = ctx
13085	return c
13086}
13087
13088// Header returns an http.Header that can be modified by the caller to
13089// add HTTP headers to the request.
13090func (c *ProjectsLocationsDatasetsHl7V2StoresCreateCall) Header() http.Header {
13091	if c.header_ == nil {
13092		c.header_ = make(http.Header)
13093	}
13094	return c.header_
13095}
13096
13097func (c *ProjectsLocationsDatasetsHl7V2StoresCreateCall) doRequest(alt string) (*http.Response, error) {
13098	reqHeaders := make(http.Header)
13099	for k, v := range c.header_ {
13100		reqHeaders[k] = v
13101	}
13102	reqHeaders.Set("User-Agent", c.s.userAgent())
13103	var body io.Reader = nil
13104	body, err := googleapi.WithoutDataWrapper.JSONReader(c.hl7v2store)
13105	if err != nil {
13106		return nil, err
13107	}
13108	reqHeaders.Set("Content-Type", "application/json")
13109	c.urlParams_.Set("alt", alt)
13110	c.urlParams_.Set("prettyPrint", "false")
13111	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/hl7V2Stores")
13112	urls += "?" + c.urlParams_.Encode()
13113	req, err := http.NewRequest("POST", urls, body)
13114	if err != nil {
13115		return nil, err
13116	}
13117	req.Header = reqHeaders
13118	googleapi.Expand(req.URL, map[string]string{
13119		"parent": c.parent,
13120	})
13121	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13122}
13123
13124// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.create" call.
13125// Exactly one of *Hl7V2Store or error will be non-nil. Any non-2xx
13126// status code is an error. Response headers are in either
13127// *Hl7V2Store.ServerResponse.Header or (if a response was returned at
13128// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
13129// to check whether the returned error was because
13130// http.StatusNotModified was returned.
13131func (c *ProjectsLocationsDatasetsHl7V2StoresCreateCall) Do(opts ...googleapi.CallOption) (*Hl7V2Store, error) {
13132	gensupport.SetOptions(c.urlParams_, opts...)
13133	res, err := c.doRequest("json")
13134	if res != nil && res.StatusCode == http.StatusNotModified {
13135		if res.Body != nil {
13136			res.Body.Close()
13137		}
13138		return nil, &googleapi.Error{
13139			Code:   res.StatusCode,
13140			Header: res.Header,
13141		}
13142	}
13143	if err != nil {
13144		return nil, err
13145	}
13146	defer googleapi.CloseBody(res)
13147	if err := googleapi.CheckResponse(res); err != nil {
13148		return nil, err
13149	}
13150	ret := &Hl7V2Store{
13151		ServerResponse: googleapi.ServerResponse{
13152			Header:         res.Header,
13153			HTTPStatusCode: res.StatusCode,
13154		},
13155	}
13156	target := &ret
13157	if err := gensupport.DecodeResponse(target, res); err != nil {
13158		return nil, err
13159	}
13160	return ret, nil
13161	// {
13162	//   "description": "Creates a new HL7v2 store within the parent dataset.",
13163	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores",
13164	//   "httpMethod": "POST",
13165	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.create",
13166	//   "parameterOrder": [
13167	//     "parent"
13168	//   ],
13169	//   "parameters": {
13170	//     "hl7V2StoreId": {
13171	//       "description": "The ID of the HL7v2 store that is being created.\nThe string must match the following regex: `[\\p{L}\\p{N}_\\-\\.]{1,256}`.",
13172	//       "location": "query",
13173	//       "type": "string"
13174	//     },
13175	//     "parent": {
13176	//       "description": "The name of the dataset this HL7v2 store belongs to.",
13177	//       "location": "path",
13178	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
13179	//       "required": true,
13180	//       "type": "string"
13181	//     }
13182	//   },
13183	//   "path": "v1beta1/{+parent}/hl7V2Stores",
13184	//   "request": {
13185	//     "$ref": "Hl7V2Store"
13186	//   },
13187	//   "response": {
13188	//     "$ref": "Hl7V2Store"
13189	//   },
13190	//   "scopes": [
13191	//     "https://www.googleapis.com/auth/cloud-platform"
13192	//   ]
13193	// }
13194
13195}
13196
13197// method id "healthcare.projects.locations.datasets.hl7V2Stores.delete":
13198
13199type ProjectsLocationsDatasetsHl7V2StoresDeleteCall struct {
13200	s          *Service
13201	name       string
13202	urlParams_ gensupport.URLParams
13203	ctx_       context.Context
13204	header_    http.Header
13205}
13206
13207// Delete: Deletes the specified HL7v2 store and removes all messages
13208// that are
13209// contained within it.
13210func (r *ProjectsLocationsDatasetsHl7V2StoresService) Delete(name string) *ProjectsLocationsDatasetsHl7V2StoresDeleteCall {
13211	c := &ProjectsLocationsDatasetsHl7V2StoresDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13212	c.name = name
13213	return c
13214}
13215
13216// Fields allows partial responses to be retrieved. See
13217// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13218// for more information.
13219func (c *ProjectsLocationsDatasetsHl7V2StoresDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresDeleteCall {
13220	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13221	return c
13222}
13223
13224// Context sets the context to be used in this call's Do method. Any
13225// pending HTTP request will be aborted if the provided context is
13226// canceled.
13227func (c *ProjectsLocationsDatasetsHl7V2StoresDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresDeleteCall {
13228	c.ctx_ = ctx
13229	return c
13230}
13231
13232// Header returns an http.Header that can be modified by the caller to
13233// add HTTP headers to the request.
13234func (c *ProjectsLocationsDatasetsHl7V2StoresDeleteCall) Header() http.Header {
13235	if c.header_ == nil {
13236		c.header_ = make(http.Header)
13237	}
13238	return c.header_
13239}
13240
13241func (c *ProjectsLocationsDatasetsHl7V2StoresDeleteCall) doRequest(alt string) (*http.Response, error) {
13242	reqHeaders := make(http.Header)
13243	for k, v := range c.header_ {
13244		reqHeaders[k] = v
13245	}
13246	reqHeaders.Set("User-Agent", c.s.userAgent())
13247	var body io.Reader = nil
13248	c.urlParams_.Set("alt", alt)
13249	c.urlParams_.Set("prettyPrint", "false")
13250	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
13251	urls += "?" + c.urlParams_.Encode()
13252	req, err := http.NewRequest("DELETE", urls, body)
13253	if err != nil {
13254		return nil, err
13255	}
13256	req.Header = reqHeaders
13257	googleapi.Expand(req.URL, map[string]string{
13258		"name": c.name,
13259	})
13260	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13261}
13262
13263// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.delete" call.
13264// Exactly one of *Empty or error will be non-nil. Any non-2xx status
13265// code is an error. Response headers are in either
13266// *Empty.ServerResponse.Header or (if a response was returned at all)
13267// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
13268// check whether the returned error was because http.StatusNotModified
13269// was returned.
13270func (c *ProjectsLocationsDatasetsHl7V2StoresDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
13271	gensupport.SetOptions(c.urlParams_, opts...)
13272	res, err := c.doRequest("json")
13273	if res != nil && res.StatusCode == http.StatusNotModified {
13274		if res.Body != nil {
13275			res.Body.Close()
13276		}
13277		return nil, &googleapi.Error{
13278			Code:   res.StatusCode,
13279			Header: res.Header,
13280		}
13281	}
13282	if err != nil {
13283		return nil, err
13284	}
13285	defer googleapi.CloseBody(res)
13286	if err := googleapi.CheckResponse(res); err != nil {
13287		return nil, err
13288	}
13289	ret := &Empty{
13290		ServerResponse: googleapi.ServerResponse{
13291			Header:         res.Header,
13292			HTTPStatusCode: res.StatusCode,
13293		},
13294	}
13295	target := &ret
13296	if err := gensupport.DecodeResponse(target, res); err != nil {
13297		return nil, err
13298	}
13299	return ret, nil
13300	// {
13301	//   "description": "Deletes the specified HL7v2 store and removes all messages that are\ncontained within it.",
13302	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}",
13303	//   "httpMethod": "DELETE",
13304	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.delete",
13305	//   "parameterOrder": [
13306	//     "name"
13307	//   ],
13308	//   "parameters": {
13309	//     "name": {
13310	//       "description": "The resource name of the HL7v2 store to delete.",
13311	//       "location": "path",
13312	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+$",
13313	//       "required": true,
13314	//       "type": "string"
13315	//     }
13316	//   },
13317	//   "path": "v1beta1/{+name}",
13318	//   "response": {
13319	//     "$ref": "Empty"
13320	//   },
13321	//   "scopes": [
13322	//     "https://www.googleapis.com/auth/cloud-platform"
13323	//   ]
13324	// }
13325
13326}
13327
13328// method id "healthcare.projects.locations.datasets.hl7V2Stores.get":
13329
13330type ProjectsLocationsDatasetsHl7V2StoresGetCall struct {
13331	s            *Service
13332	name         string
13333	urlParams_   gensupport.URLParams
13334	ifNoneMatch_ string
13335	ctx_         context.Context
13336	header_      http.Header
13337}
13338
13339// Get: Gets the specified HL7v2 store.
13340func (r *ProjectsLocationsDatasetsHl7V2StoresService) Get(name string) *ProjectsLocationsDatasetsHl7V2StoresGetCall {
13341	c := &ProjectsLocationsDatasetsHl7V2StoresGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13342	c.name = name
13343	return c
13344}
13345
13346// Fields allows partial responses to be retrieved. See
13347// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13348// for more information.
13349func (c *ProjectsLocationsDatasetsHl7V2StoresGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresGetCall {
13350	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13351	return c
13352}
13353
13354// IfNoneMatch sets the optional parameter which makes the operation
13355// fail if the object's ETag matches the given value. This is useful for
13356// getting updates only after the object has changed since the last
13357// request. Use googleapi.IsNotModified to check whether the response
13358// error from Do is the result of In-None-Match.
13359func (c *ProjectsLocationsDatasetsHl7V2StoresGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsHl7V2StoresGetCall {
13360	c.ifNoneMatch_ = entityTag
13361	return c
13362}
13363
13364// Context sets the context to be used in this call's Do method. Any
13365// pending HTTP request will be aborted if the provided context is
13366// canceled.
13367func (c *ProjectsLocationsDatasetsHl7V2StoresGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresGetCall {
13368	c.ctx_ = ctx
13369	return c
13370}
13371
13372// Header returns an http.Header that can be modified by the caller to
13373// add HTTP headers to the request.
13374func (c *ProjectsLocationsDatasetsHl7V2StoresGetCall) Header() http.Header {
13375	if c.header_ == nil {
13376		c.header_ = make(http.Header)
13377	}
13378	return c.header_
13379}
13380
13381func (c *ProjectsLocationsDatasetsHl7V2StoresGetCall) doRequest(alt string) (*http.Response, error) {
13382	reqHeaders := make(http.Header)
13383	for k, v := range c.header_ {
13384		reqHeaders[k] = v
13385	}
13386	reqHeaders.Set("User-Agent", c.s.userAgent())
13387	if c.ifNoneMatch_ != "" {
13388		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
13389	}
13390	var body io.Reader = nil
13391	c.urlParams_.Set("alt", alt)
13392	c.urlParams_.Set("prettyPrint", "false")
13393	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
13394	urls += "?" + c.urlParams_.Encode()
13395	req, err := http.NewRequest("GET", urls, body)
13396	if err != nil {
13397		return nil, err
13398	}
13399	req.Header = reqHeaders
13400	googleapi.Expand(req.URL, map[string]string{
13401		"name": c.name,
13402	})
13403	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13404}
13405
13406// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.get" call.
13407// Exactly one of *Hl7V2Store or error will be non-nil. Any non-2xx
13408// status code is an error. Response headers are in either
13409// *Hl7V2Store.ServerResponse.Header or (if a response was returned at
13410// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
13411// to check whether the returned error was because
13412// http.StatusNotModified was returned.
13413func (c *ProjectsLocationsDatasetsHl7V2StoresGetCall) Do(opts ...googleapi.CallOption) (*Hl7V2Store, error) {
13414	gensupport.SetOptions(c.urlParams_, opts...)
13415	res, err := c.doRequest("json")
13416	if res != nil && res.StatusCode == http.StatusNotModified {
13417		if res.Body != nil {
13418			res.Body.Close()
13419		}
13420		return nil, &googleapi.Error{
13421			Code:   res.StatusCode,
13422			Header: res.Header,
13423		}
13424	}
13425	if err != nil {
13426		return nil, err
13427	}
13428	defer googleapi.CloseBody(res)
13429	if err := googleapi.CheckResponse(res); err != nil {
13430		return nil, err
13431	}
13432	ret := &Hl7V2Store{
13433		ServerResponse: googleapi.ServerResponse{
13434			Header:         res.Header,
13435			HTTPStatusCode: res.StatusCode,
13436		},
13437	}
13438	target := &ret
13439	if err := gensupport.DecodeResponse(target, res); err != nil {
13440		return nil, err
13441	}
13442	return ret, nil
13443	// {
13444	//   "description": "Gets the specified HL7v2 store.",
13445	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}",
13446	//   "httpMethod": "GET",
13447	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.get",
13448	//   "parameterOrder": [
13449	//     "name"
13450	//   ],
13451	//   "parameters": {
13452	//     "name": {
13453	//       "description": "The resource name of the HL7v2 store to get.",
13454	//       "location": "path",
13455	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+$",
13456	//       "required": true,
13457	//       "type": "string"
13458	//     }
13459	//   },
13460	//   "path": "v1beta1/{+name}",
13461	//   "response": {
13462	//     "$ref": "Hl7V2Store"
13463	//   },
13464	//   "scopes": [
13465	//     "https://www.googleapis.com/auth/cloud-platform"
13466	//   ]
13467	// }
13468
13469}
13470
13471// method id "healthcare.projects.locations.datasets.hl7V2Stores.getIamPolicy":
13472
13473type ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall struct {
13474	s            *Service
13475	resource     string
13476	urlParams_   gensupport.URLParams
13477	ifNoneMatch_ string
13478	ctx_         context.Context
13479	header_      http.Header
13480}
13481
13482// GetIamPolicy: Gets the access control policy for a resource.
13483// Returns an empty policy if the resource exists and does not have a
13484// policy
13485// set.
13486func (r *ProjectsLocationsDatasetsHl7V2StoresService) GetIamPolicy(resource string) *ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall {
13487	c := &ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13488	c.resource = resource
13489	return c
13490}
13491
13492// Fields allows partial responses to be retrieved. See
13493// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13494// for more information.
13495func (c *ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall {
13496	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13497	return c
13498}
13499
13500// IfNoneMatch sets the optional parameter which makes the operation
13501// fail if the object's ETag matches the given value. This is useful for
13502// getting updates only after the object has changed since the last
13503// request. Use googleapi.IsNotModified to check whether the response
13504// error from Do is the result of In-None-Match.
13505func (c *ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall {
13506	c.ifNoneMatch_ = entityTag
13507	return c
13508}
13509
13510// Context sets the context to be used in this call's Do method. Any
13511// pending HTTP request will be aborted if the provided context is
13512// canceled.
13513func (c *ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall {
13514	c.ctx_ = ctx
13515	return c
13516}
13517
13518// Header returns an http.Header that can be modified by the caller to
13519// add HTTP headers to the request.
13520func (c *ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall) Header() http.Header {
13521	if c.header_ == nil {
13522		c.header_ = make(http.Header)
13523	}
13524	return c.header_
13525}
13526
13527func (c *ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
13528	reqHeaders := make(http.Header)
13529	for k, v := range c.header_ {
13530		reqHeaders[k] = v
13531	}
13532	reqHeaders.Set("User-Agent", c.s.userAgent())
13533	if c.ifNoneMatch_ != "" {
13534		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
13535	}
13536	var body io.Reader = nil
13537	c.urlParams_.Set("alt", alt)
13538	c.urlParams_.Set("prettyPrint", "false")
13539	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:getIamPolicy")
13540	urls += "?" + c.urlParams_.Encode()
13541	req, err := http.NewRequest("GET", urls, body)
13542	if err != nil {
13543		return nil, err
13544	}
13545	req.Header = reqHeaders
13546	googleapi.Expand(req.URL, map[string]string{
13547		"resource": c.resource,
13548	})
13549	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13550}
13551
13552// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.getIamPolicy" call.
13553// Exactly one of *Policy or error will be non-nil. Any non-2xx status
13554// code is an error. Response headers are in either
13555// *Policy.ServerResponse.Header or (if a response was returned at all)
13556// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
13557// check whether the returned error was because http.StatusNotModified
13558// was returned.
13559func (c *ProjectsLocationsDatasetsHl7V2StoresGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
13560	gensupport.SetOptions(c.urlParams_, opts...)
13561	res, err := c.doRequest("json")
13562	if res != nil && res.StatusCode == http.StatusNotModified {
13563		if res.Body != nil {
13564			res.Body.Close()
13565		}
13566		return nil, &googleapi.Error{
13567			Code:   res.StatusCode,
13568			Header: res.Header,
13569		}
13570	}
13571	if err != nil {
13572		return nil, err
13573	}
13574	defer googleapi.CloseBody(res)
13575	if err := googleapi.CheckResponse(res); err != nil {
13576		return nil, err
13577	}
13578	ret := &Policy{
13579		ServerResponse: googleapi.ServerResponse{
13580			Header:         res.Header,
13581			HTTPStatusCode: res.StatusCode,
13582		},
13583	}
13584	target := &ret
13585	if err := gensupport.DecodeResponse(target, res); err != nil {
13586		return nil, err
13587	}
13588	return ret, nil
13589	// {
13590	//   "description": "Gets the access control policy for a resource.\nReturns an empty policy if the resource exists and does not have a policy\nset.",
13591	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}:getIamPolicy",
13592	//   "httpMethod": "GET",
13593	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.getIamPolicy",
13594	//   "parameterOrder": [
13595	//     "resource"
13596	//   ],
13597	//   "parameters": {
13598	//     "resource": {
13599	//       "description": "REQUIRED: The resource for which the policy is being requested.\nSee the operation documentation for the appropriate value for this field.",
13600	//       "location": "path",
13601	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+$",
13602	//       "required": true,
13603	//       "type": "string"
13604	//     }
13605	//   },
13606	//   "path": "v1beta1/{+resource}:getIamPolicy",
13607	//   "response": {
13608	//     "$ref": "Policy"
13609	//   },
13610	//   "scopes": [
13611	//     "https://www.googleapis.com/auth/cloud-platform"
13612	//   ]
13613	// }
13614
13615}
13616
13617// method id "healthcare.projects.locations.datasets.hl7V2Stores.list":
13618
13619type ProjectsLocationsDatasetsHl7V2StoresListCall struct {
13620	s            *Service
13621	parent       string
13622	urlParams_   gensupport.URLParams
13623	ifNoneMatch_ string
13624	ctx_         context.Context
13625	header_      http.Header
13626}
13627
13628// List: Lists the HL7v2 stores in the given dataset.
13629func (r *ProjectsLocationsDatasetsHl7V2StoresService) List(parent string) *ProjectsLocationsDatasetsHl7V2StoresListCall {
13630	c := &ProjectsLocationsDatasetsHl7V2StoresListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13631	c.parent = parent
13632	return c
13633}
13634
13635// Filter sets the optional parameter "filter": Restricts stores
13636// returned to those matching a filter.
13637// Syntax:
13638// https://cloud.google.com/appengine/docs/standard/python/search
13639// /query_strings
13640// Only filtering on labels is supported, for example
13641// `labels.key=value`.
13642func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) Filter(filter string) *ProjectsLocationsDatasetsHl7V2StoresListCall {
13643	c.urlParams_.Set("filter", filter)
13644	return c
13645}
13646
13647// PageSize sets the optional parameter "pageSize": Limit on the number
13648// of HL7v2 stores to return in a single response.
13649// If zero the default page size of 100 is used.
13650func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsHl7V2StoresListCall {
13651	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
13652	return c
13653}
13654
13655// PageToken sets the optional parameter "pageToken": The
13656// next_page_token value returned from the previous List request, if
13657// any.
13658func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsHl7V2StoresListCall {
13659	c.urlParams_.Set("pageToken", pageToken)
13660	return c
13661}
13662
13663// Fields allows partial responses to be retrieved. See
13664// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13665// for more information.
13666func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresListCall {
13667	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13668	return c
13669}
13670
13671// IfNoneMatch sets the optional parameter which makes the operation
13672// fail if the object's ETag matches the given value. This is useful for
13673// getting updates only after the object has changed since the last
13674// request. Use googleapi.IsNotModified to check whether the response
13675// error from Do is the result of In-None-Match.
13676func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsHl7V2StoresListCall {
13677	c.ifNoneMatch_ = entityTag
13678	return c
13679}
13680
13681// Context sets the context to be used in this call's Do method. Any
13682// pending HTTP request will be aborted if the provided context is
13683// canceled.
13684func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresListCall {
13685	c.ctx_ = ctx
13686	return c
13687}
13688
13689// Header returns an http.Header that can be modified by the caller to
13690// add HTTP headers to the request.
13691func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) Header() http.Header {
13692	if c.header_ == nil {
13693		c.header_ = make(http.Header)
13694	}
13695	return c.header_
13696}
13697
13698func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) doRequest(alt string) (*http.Response, error) {
13699	reqHeaders := make(http.Header)
13700	for k, v := range c.header_ {
13701		reqHeaders[k] = v
13702	}
13703	reqHeaders.Set("User-Agent", c.s.userAgent())
13704	if c.ifNoneMatch_ != "" {
13705		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
13706	}
13707	var body io.Reader = nil
13708	c.urlParams_.Set("alt", alt)
13709	c.urlParams_.Set("prettyPrint", "false")
13710	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/hl7V2Stores")
13711	urls += "?" + c.urlParams_.Encode()
13712	req, err := http.NewRequest("GET", urls, body)
13713	if err != nil {
13714		return nil, err
13715	}
13716	req.Header = reqHeaders
13717	googleapi.Expand(req.URL, map[string]string{
13718		"parent": c.parent,
13719	})
13720	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13721}
13722
13723// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.list" call.
13724// Exactly one of *ListHl7V2StoresResponse or error will be non-nil. Any
13725// non-2xx status code is an error. Response headers are in either
13726// *ListHl7V2StoresResponse.ServerResponse.Header or (if a response was
13727// returned at all) in error.(*googleapi.Error).Header. Use
13728// googleapi.IsNotModified to check whether the returned error was
13729// because http.StatusNotModified was returned.
13730func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) Do(opts ...googleapi.CallOption) (*ListHl7V2StoresResponse, error) {
13731	gensupport.SetOptions(c.urlParams_, opts...)
13732	res, err := c.doRequest("json")
13733	if res != nil && res.StatusCode == http.StatusNotModified {
13734		if res.Body != nil {
13735			res.Body.Close()
13736		}
13737		return nil, &googleapi.Error{
13738			Code:   res.StatusCode,
13739			Header: res.Header,
13740		}
13741	}
13742	if err != nil {
13743		return nil, err
13744	}
13745	defer googleapi.CloseBody(res)
13746	if err := googleapi.CheckResponse(res); err != nil {
13747		return nil, err
13748	}
13749	ret := &ListHl7V2StoresResponse{
13750		ServerResponse: googleapi.ServerResponse{
13751			Header:         res.Header,
13752			HTTPStatusCode: res.StatusCode,
13753		},
13754	}
13755	target := &ret
13756	if err := gensupport.DecodeResponse(target, res); err != nil {
13757		return nil, err
13758	}
13759	return ret, nil
13760	// {
13761	//   "description": "Lists the HL7v2 stores in the given dataset.",
13762	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores",
13763	//   "httpMethod": "GET",
13764	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.list",
13765	//   "parameterOrder": [
13766	//     "parent"
13767	//   ],
13768	//   "parameters": {
13769	//     "filter": {
13770	//       "description": "Restricts stores returned to those matching a filter. Syntax:\nhttps://cloud.google.com/appengine/docs/standard/python/search/query_strings\nOnly filtering on labels is supported, for example `labels.key=value`.",
13771	//       "location": "query",
13772	//       "type": "string"
13773	//     },
13774	//     "pageSize": {
13775	//       "description": "Limit on the number of HL7v2 stores to return in a single response.\nIf zero the default page size of 100 is used.",
13776	//       "format": "int32",
13777	//       "location": "query",
13778	//       "type": "integer"
13779	//     },
13780	//     "pageToken": {
13781	//       "description": "The next_page_token value returned from the previous List request, if any.",
13782	//       "location": "query",
13783	//       "type": "string"
13784	//     },
13785	//     "parent": {
13786	//       "description": "Name of the dataset.",
13787	//       "location": "path",
13788	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
13789	//       "required": true,
13790	//       "type": "string"
13791	//     }
13792	//   },
13793	//   "path": "v1beta1/{+parent}/hl7V2Stores",
13794	//   "response": {
13795	//     "$ref": "ListHl7V2StoresResponse"
13796	//   },
13797	//   "scopes": [
13798	//     "https://www.googleapis.com/auth/cloud-platform"
13799	//   ]
13800	// }
13801
13802}
13803
13804// Pages invokes f for each page of results.
13805// A non-nil error returned from f will halt the iteration.
13806// The provided context supersedes any context provided to the Context method.
13807func (c *ProjectsLocationsDatasetsHl7V2StoresListCall) Pages(ctx context.Context, f func(*ListHl7V2StoresResponse) error) error {
13808	c.ctx_ = ctx
13809	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
13810	for {
13811		x, err := c.Do()
13812		if err != nil {
13813			return err
13814		}
13815		if err := f(x); err != nil {
13816			return err
13817		}
13818		if x.NextPageToken == "" {
13819			return nil
13820		}
13821		c.PageToken(x.NextPageToken)
13822	}
13823}
13824
13825// method id "healthcare.projects.locations.datasets.hl7V2Stores.patch":
13826
13827type ProjectsLocationsDatasetsHl7V2StoresPatchCall struct {
13828	s          *Service
13829	name       string
13830	hl7v2store *Hl7V2Store
13831	urlParams_ gensupport.URLParams
13832	ctx_       context.Context
13833	header_    http.Header
13834}
13835
13836// Patch: Updates the HL7v2 store.
13837func (r *ProjectsLocationsDatasetsHl7V2StoresService) Patch(name string, hl7v2store *Hl7V2Store) *ProjectsLocationsDatasetsHl7V2StoresPatchCall {
13838	c := &ProjectsLocationsDatasetsHl7V2StoresPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13839	c.name = name
13840	c.hl7v2store = hl7v2store
13841	return c
13842}
13843
13844// UpdateMask sets the optional parameter "updateMask": The update mask
13845// applies to the resource. For the `FieldMask`
13846// definition,
13847// see
13848// https://developers.google.com/protocol-buffers/docs/re
13849// ference/google.protobuf#fieldmask
13850func (c *ProjectsLocationsDatasetsHl7V2StoresPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDatasetsHl7V2StoresPatchCall {
13851	c.urlParams_.Set("updateMask", updateMask)
13852	return c
13853}
13854
13855// Fields allows partial responses to be retrieved. See
13856// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
13857// for more information.
13858func (c *ProjectsLocationsDatasetsHl7V2StoresPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresPatchCall {
13859	c.urlParams_.Set("fields", googleapi.CombineFields(s))
13860	return c
13861}
13862
13863// Context sets the context to be used in this call's Do method. Any
13864// pending HTTP request will be aborted if the provided context is
13865// canceled.
13866func (c *ProjectsLocationsDatasetsHl7V2StoresPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresPatchCall {
13867	c.ctx_ = ctx
13868	return c
13869}
13870
13871// Header returns an http.Header that can be modified by the caller to
13872// add HTTP headers to the request.
13873func (c *ProjectsLocationsDatasetsHl7V2StoresPatchCall) Header() http.Header {
13874	if c.header_ == nil {
13875		c.header_ = make(http.Header)
13876	}
13877	return c.header_
13878}
13879
13880func (c *ProjectsLocationsDatasetsHl7V2StoresPatchCall) doRequest(alt string) (*http.Response, error) {
13881	reqHeaders := make(http.Header)
13882	for k, v := range c.header_ {
13883		reqHeaders[k] = v
13884	}
13885	reqHeaders.Set("User-Agent", c.s.userAgent())
13886	var body io.Reader = nil
13887	body, err := googleapi.WithoutDataWrapper.JSONReader(c.hl7v2store)
13888	if err != nil {
13889		return nil, err
13890	}
13891	reqHeaders.Set("Content-Type", "application/json")
13892	c.urlParams_.Set("alt", alt)
13893	c.urlParams_.Set("prettyPrint", "false")
13894	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
13895	urls += "?" + c.urlParams_.Encode()
13896	req, err := http.NewRequest("PATCH", urls, body)
13897	if err != nil {
13898		return nil, err
13899	}
13900	req.Header = reqHeaders
13901	googleapi.Expand(req.URL, map[string]string{
13902		"name": c.name,
13903	})
13904	return gensupport.SendRequest(c.ctx_, c.s.client, req)
13905}
13906
13907// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.patch" call.
13908// Exactly one of *Hl7V2Store or error will be non-nil. Any non-2xx
13909// status code is an error. Response headers are in either
13910// *Hl7V2Store.ServerResponse.Header or (if a response was returned at
13911// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
13912// to check whether the returned error was because
13913// http.StatusNotModified was returned.
13914func (c *ProjectsLocationsDatasetsHl7V2StoresPatchCall) Do(opts ...googleapi.CallOption) (*Hl7V2Store, error) {
13915	gensupport.SetOptions(c.urlParams_, opts...)
13916	res, err := c.doRequest("json")
13917	if res != nil && res.StatusCode == http.StatusNotModified {
13918		if res.Body != nil {
13919			res.Body.Close()
13920		}
13921		return nil, &googleapi.Error{
13922			Code:   res.StatusCode,
13923			Header: res.Header,
13924		}
13925	}
13926	if err != nil {
13927		return nil, err
13928	}
13929	defer googleapi.CloseBody(res)
13930	if err := googleapi.CheckResponse(res); err != nil {
13931		return nil, err
13932	}
13933	ret := &Hl7V2Store{
13934		ServerResponse: googleapi.ServerResponse{
13935			Header:         res.Header,
13936			HTTPStatusCode: res.StatusCode,
13937		},
13938	}
13939	target := &ret
13940	if err := gensupport.DecodeResponse(target, res); err != nil {
13941		return nil, err
13942	}
13943	return ret, nil
13944	// {
13945	//   "description": "Updates the HL7v2 store.",
13946	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}",
13947	//   "httpMethod": "PATCH",
13948	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.patch",
13949	//   "parameterOrder": [
13950	//     "name"
13951	//   ],
13952	//   "parameters": {
13953	//     "name": {
13954	//       "description": "Output only. Resource name of the HL7v2 store, of the form\n`projects/{project_id}/datasets/{dataset_id}/hl7V2Stores/{hl7v2_store_id}`.",
13955	//       "location": "path",
13956	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+$",
13957	//       "required": true,
13958	//       "type": "string"
13959	//     },
13960	//     "updateMask": {
13961	//       "description": "The update mask applies to the resource. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask",
13962	//       "format": "google-fieldmask",
13963	//       "location": "query",
13964	//       "type": "string"
13965	//     }
13966	//   },
13967	//   "path": "v1beta1/{+name}",
13968	//   "request": {
13969	//     "$ref": "Hl7V2Store"
13970	//   },
13971	//   "response": {
13972	//     "$ref": "Hl7V2Store"
13973	//   },
13974	//   "scopes": [
13975	//     "https://www.googleapis.com/auth/cloud-platform"
13976	//   ]
13977	// }
13978
13979}
13980
13981// method id "healthcare.projects.locations.datasets.hl7V2Stores.setIamPolicy":
13982
13983type ProjectsLocationsDatasetsHl7V2StoresSetIamPolicyCall struct {
13984	s                   *Service
13985	resource            string
13986	setiampolicyrequest *SetIamPolicyRequest
13987	urlParams_          gensupport.URLParams
13988	ctx_                context.Context
13989	header_             http.Header
13990}
13991
13992// SetIamPolicy: Sets the access control policy on the specified
13993// resource. Replaces any
13994// existing policy.
13995func (r *ProjectsLocationsDatasetsHl7V2StoresService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsDatasetsHl7V2StoresSetIamPolicyCall {
13996	c := &ProjectsLocationsDatasetsHl7V2StoresSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)}
13997	c.resource = resource
13998	c.setiampolicyrequest = setiampolicyrequest
13999	return c
14000}
14001
14002// Fields allows partial responses to be retrieved. See
14003// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14004// for more information.
14005func (c *ProjectsLocationsDatasetsHl7V2StoresSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresSetIamPolicyCall {
14006	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14007	return c
14008}
14009
14010// Context sets the context to be used in this call's Do method. Any
14011// pending HTTP request will be aborted if the provided context is
14012// canceled.
14013func (c *ProjectsLocationsDatasetsHl7V2StoresSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresSetIamPolicyCall {
14014	c.ctx_ = ctx
14015	return c
14016}
14017
14018// Header returns an http.Header that can be modified by the caller to
14019// add HTTP headers to the request.
14020func (c *ProjectsLocationsDatasetsHl7V2StoresSetIamPolicyCall) Header() http.Header {
14021	if c.header_ == nil {
14022		c.header_ = make(http.Header)
14023	}
14024	return c.header_
14025}
14026
14027func (c *ProjectsLocationsDatasetsHl7V2StoresSetIamPolicyCall) doRequest(alt string) (*http.Response, error) {
14028	reqHeaders := make(http.Header)
14029	for k, v := range c.header_ {
14030		reqHeaders[k] = v
14031	}
14032	reqHeaders.Set("User-Agent", c.s.userAgent())
14033	var body io.Reader = nil
14034	body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest)
14035	if err != nil {
14036		return nil, err
14037	}
14038	reqHeaders.Set("Content-Type", "application/json")
14039	c.urlParams_.Set("alt", alt)
14040	c.urlParams_.Set("prettyPrint", "false")
14041	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:setIamPolicy")
14042	urls += "?" + c.urlParams_.Encode()
14043	req, err := http.NewRequest("POST", urls, body)
14044	if err != nil {
14045		return nil, err
14046	}
14047	req.Header = reqHeaders
14048	googleapi.Expand(req.URL, map[string]string{
14049		"resource": c.resource,
14050	})
14051	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14052}
14053
14054// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.setIamPolicy" call.
14055// Exactly one of *Policy or error will be non-nil. Any non-2xx status
14056// code is an error. Response headers are in either
14057// *Policy.ServerResponse.Header or (if a response was returned at all)
14058// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
14059// check whether the returned error was because http.StatusNotModified
14060// was returned.
14061func (c *ProjectsLocationsDatasetsHl7V2StoresSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) {
14062	gensupport.SetOptions(c.urlParams_, opts...)
14063	res, err := c.doRequest("json")
14064	if res != nil && res.StatusCode == http.StatusNotModified {
14065		if res.Body != nil {
14066			res.Body.Close()
14067		}
14068		return nil, &googleapi.Error{
14069			Code:   res.StatusCode,
14070			Header: res.Header,
14071		}
14072	}
14073	if err != nil {
14074		return nil, err
14075	}
14076	defer googleapi.CloseBody(res)
14077	if err := googleapi.CheckResponse(res); err != nil {
14078		return nil, err
14079	}
14080	ret := &Policy{
14081		ServerResponse: googleapi.ServerResponse{
14082			Header:         res.Header,
14083			HTTPStatusCode: res.StatusCode,
14084		},
14085	}
14086	target := &ret
14087	if err := gensupport.DecodeResponse(target, res); err != nil {
14088		return nil, err
14089	}
14090	return ret, nil
14091	// {
14092	//   "description": "Sets the access control policy on the specified resource. Replaces any\nexisting policy.",
14093	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}:setIamPolicy",
14094	//   "httpMethod": "POST",
14095	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.setIamPolicy",
14096	//   "parameterOrder": [
14097	//     "resource"
14098	//   ],
14099	//   "parameters": {
14100	//     "resource": {
14101	//       "description": "REQUIRED: The resource for which the policy is being specified.\nSee the operation documentation for the appropriate value for this field.",
14102	//       "location": "path",
14103	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+$",
14104	//       "required": true,
14105	//       "type": "string"
14106	//     }
14107	//   },
14108	//   "path": "v1beta1/{+resource}:setIamPolicy",
14109	//   "request": {
14110	//     "$ref": "SetIamPolicyRequest"
14111	//   },
14112	//   "response": {
14113	//     "$ref": "Policy"
14114	//   },
14115	//   "scopes": [
14116	//     "https://www.googleapis.com/auth/cloud-platform"
14117	//   ]
14118	// }
14119
14120}
14121
14122// method id "healthcare.projects.locations.datasets.hl7V2Stores.testIamPermissions":
14123
14124type ProjectsLocationsDatasetsHl7V2StoresTestIamPermissionsCall struct {
14125	s                         *Service
14126	resource                  string
14127	testiampermissionsrequest *TestIamPermissionsRequest
14128	urlParams_                gensupport.URLParams
14129	ctx_                      context.Context
14130	header_                   http.Header
14131}
14132
14133// TestIamPermissions: Returns permissions that a caller has on the
14134// specified resource.
14135// If the resource does not exist, this will return an empty set
14136// of
14137// permissions, not a NOT_FOUND error.
14138//
14139// Note: This operation is designed to be used for building
14140// permission-aware
14141// UIs and command-line tools, not for authorization checking. This
14142// operation
14143// may "fail open" without warning.
14144func (r *ProjectsLocationsDatasetsHl7V2StoresService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsDatasetsHl7V2StoresTestIamPermissionsCall {
14145	c := &ProjectsLocationsDatasetsHl7V2StoresTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14146	c.resource = resource
14147	c.testiampermissionsrequest = testiampermissionsrequest
14148	return c
14149}
14150
14151// Fields allows partial responses to be retrieved. See
14152// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14153// for more information.
14154func (c *ProjectsLocationsDatasetsHl7V2StoresTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresTestIamPermissionsCall {
14155	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14156	return c
14157}
14158
14159// Context sets the context to be used in this call's Do method. Any
14160// pending HTTP request will be aborted if the provided context is
14161// canceled.
14162func (c *ProjectsLocationsDatasetsHl7V2StoresTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresTestIamPermissionsCall {
14163	c.ctx_ = ctx
14164	return c
14165}
14166
14167// Header returns an http.Header that can be modified by the caller to
14168// add HTTP headers to the request.
14169func (c *ProjectsLocationsDatasetsHl7V2StoresTestIamPermissionsCall) Header() http.Header {
14170	if c.header_ == nil {
14171		c.header_ = make(http.Header)
14172	}
14173	return c.header_
14174}
14175
14176func (c *ProjectsLocationsDatasetsHl7V2StoresTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) {
14177	reqHeaders := make(http.Header)
14178	for k, v := range c.header_ {
14179		reqHeaders[k] = v
14180	}
14181	reqHeaders.Set("User-Agent", c.s.userAgent())
14182	var body io.Reader = nil
14183	body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest)
14184	if err != nil {
14185		return nil, err
14186	}
14187	reqHeaders.Set("Content-Type", "application/json")
14188	c.urlParams_.Set("alt", alt)
14189	c.urlParams_.Set("prettyPrint", "false")
14190	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:testIamPermissions")
14191	urls += "?" + c.urlParams_.Encode()
14192	req, err := http.NewRequest("POST", urls, body)
14193	if err != nil {
14194		return nil, err
14195	}
14196	req.Header = reqHeaders
14197	googleapi.Expand(req.URL, map[string]string{
14198		"resource": c.resource,
14199	})
14200	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14201}
14202
14203// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.testIamPermissions" call.
14204// Exactly one of *TestIamPermissionsResponse or error will be non-nil.
14205// Any non-2xx status code is an error. Response headers are in either
14206// *TestIamPermissionsResponse.ServerResponse.Header or (if a response
14207// was returned at all) in error.(*googleapi.Error).Header. Use
14208// googleapi.IsNotModified to check whether the returned error was
14209// because http.StatusNotModified was returned.
14210func (c *ProjectsLocationsDatasetsHl7V2StoresTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) {
14211	gensupport.SetOptions(c.urlParams_, opts...)
14212	res, err := c.doRequest("json")
14213	if res != nil && res.StatusCode == http.StatusNotModified {
14214		if res.Body != nil {
14215			res.Body.Close()
14216		}
14217		return nil, &googleapi.Error{
14218			Code:   res.StatusCode,
14219			Header: res.Header,
14220		}
14221	}
14222	if err != nil {
14223		return nil, err
14224	}
14225	defer googleapi.CloseBody(res)
14226	if err := googleapi.CheckResponse(res); err != nil {
14227		return nil, err
14228	}
14229	ret := &TestIamPermissionsResponse{
14230		ServerResponse: googleapi.ServerResponse{
14231			Header:         res.Header,
14232			HTTPStatusCode: res.StatusCode,
14233		},
14234	}
14235	target := &ret
14236	if err := gensupport.DecodeResponse(target, res); err != nil {
14237		return nil, err
14238	}
14239	return ret, nil
14240	// {
14241	//   "description": "Returns permissions that a caller has on the specified resource.\nIf the resource does not exist, this will return an empty set of\npermissions, not a NOT_FOUND error.\n\nNote: This operation is designed to be used for building permission-aware\nUIs and command-line tools, not for authorization checking. This operation\nmay \"fail open\" without warning.",
14242	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}:testIamPermissions",
14243	//   "httpMethod": "POST",
14244	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.testIamPermissions",
14245	//   "parameterOrder": [
14246	//     "resource"
14247	//   ],
14248	//   "parameters": {
14249	//     "resource": {
14250	//       "description": "REQUIRED: The resource for which the policy detail is being requested.\nSee the operation documentation for the appropriate value for this field.",
14251	//       "location": "path",
14252	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+$",
14253	//       "required": true,
14254	//       "type": "string"
14255	//     }
14256	//   },
14257	//   "path": "v1beta1/{+resource}:testIamPermissions",
14258	//   "request": {
14259	//     "$ref": "TestIamPermissionsRequest"
14260	//   },
14261	//   "response": {
14262	//     "$ref": "TestIamPermissionsResponse"
14263	//   },
14264	//   "scopes": [
14265	//     "https://www.googleapis.com/auth/cloud-platform"
14266	//   ]
14267	// }
14268
14269}
14270
14271// method id "healthcare.projects.locations.datasets.hl7V2Stores.messages.create":
14272
14273type ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall struct {
14274	s                    *Service
14275	parent               string
14276	createmessagerequest *CreateMessageRequest
14277	urlParams_           gensupport.URLParams
14278	ctx_                 context.Context
14279	header_              http.Header
14280}
14281
14282// Create: Creates a message and sends a notification to the Cloud
14283// Pub/Sub topic. If
14284// configured, the MLLP adapter listens to messages created by this
14285// method and
14286// sends those back to the hospital. A successful response indicates
14287// the
14288// message has been persisted to storage and a Cloud Pub/Sub
14289// notification has
14290// been sent. Sending to the hospital by the MLLP adapter
14291// happens
14292// asynchronously.
14293func (r *ProjectsLocationsDatasetsHl7V2StoresMessagesService) Create(parent string, createmessagerequest *CreateMessageRequest) *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall {
14294	c := &ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14295	c.parent = parent
14296	c.createmessagerequest = createmessagerequest
14297	return c
14298}
14299
14300// Fields allows partial responses to be retrieved. See
14301// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14302// for more information.
14303func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall {
14304	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14305	return c
14306}
14307
14308// Context sets the context to be used in this call's Do method. Any
14309// pending HTTP request will be aborted if the provided context is
14310// canceled.
14311func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall {
14312	c.ctx_ = ctx
14313	return c
14314}
14315
14316// Header returns an http.Header that can be modified by the caller to
14317// add HTTP headers to the request.
14318func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall) Header() http.Header {
14319	if c.header_ == nil {
14320		c.header_ = make(http.Header)
14321	}
14322	return c.header_
14323}
14324
14325func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall) doRequest(alt string) (*http.Response, error) {
14326	reqHeaders := make(http.Header)
14327	for k, v := range c.header_ {
14328		reqHeaders[k] = v
14329	}
14330	reqHeaders.Set("User-Agent", c.s.userAgent())
14331	var body io.Reader = nil
14332	body, err := googleapi.WithoutDataWrapper.JSONReader(c.createmessagerequest)
14333	if err != nil {
14334		return nil, err
14335	}
14336	reqHeaders.Set("Content-Type", "application/json")
14337	c.urlParams_.Set("alt", alt)
14338	c.urlParams_.Set("prettyPrint", "false")
14339	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/messages")
14340	urls += "?" + c.urlParams_.Encode()
14341	req, err := http.NewRequest("POST", urls, body)
14342	if err != nil {
14343		return nil, err
14344	}
14345	req.Header = reqHeaders
14346	googleapi.Expand(req.URL, map[string]string{
14347		"parent": c.parent,
14348	})
14349	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14350}
14351
14352// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.messages.create" call.
14353// Exactly one of *Message or error will be non-nil. Any non-2xx status
14354// code is an error. Response headers are in either
14355// *Message.ServerResponse.Header or (if a response was returned at all)
14356// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
14357// check whether the returned error was because http.StatusNotModified
14358// was returned.
14359func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesCreateCall) Do(opts ...googleapi.CallOption) (*Message, error) {
14360	gensupport.SetOptions(c.urlParams_, opts...)
14361	res, err := c.doRequest("json")
14362	if res != nil && res.StatusCode == http.StatusNotModified {
14363		if res.Body != nil {
14364			res.Body.Close()
14365		}
14366		return nil, &googleapi.Error{
14367			Code:   res.StatusCode,
14368			Header: res.Header,
14369		}
14370	}
14371	if err != nil {
14372		return nil, err
14373	}
14374	defer googleapi.CloseBody(res)
14375	if err := googleapi.CheckResponse(res); err != nil {
14376		return nil, err
14377	}
14378	ret := &Message{
14379		ServerResponse: googleapi.ServerResponse{
14380			Header:         res.Header,
14381			HTTPStatusCode: res.StatusCode,
14382		},
14383	}
14384	target := &ret
14385	if err := gensupport.DecodeResponse(target, res); err != nil {
14386		return nil, err
14387	}
14388	return ret, nil
14389	// {
14390	//   "description": "Creates a message and sends a notification to the Cloud Pub/Sub topic. If\nconfigured, the MLLP adapter listens to messages created by this method and\nsends those back to the hospital. A successful response indicates the\nmessage has been persisted to storage and a Cloud Pub/Sub notification has\nbeen sent. Sending to the hospital by the MLLP adapter happens\nasynchronously.",
14391	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}/messages",
14392	//   "httpMethod": "POST",
14393	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.messages.create",
14394	//   "parameterOrder": [
14395	//     "parent"
14396	//   ],
14397	//   "parameters": {
14398	//     "parent": {
14399	//       "description": "The name of the dataset this message belongs to.",
14400	//       "location": "path",
14401	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+$",
14402	//       "required": true,
14403	//       "type": "string"
14404	//     }
14405	//   },
14406	//   "path": "v1beta1/{+parent}/messages",
14407	//   "request": {
14408	//     "$ref": "CreateMessageRequest"
14409	//   },
14410	//   "response": {
14411	//     "$ref": "Message"
14412	//   },
14413	//   "scopes": [
14414	//     "https://www.googleapis.com/auth/cloud-platform"
14415	//   ]
14416	// }
14417
14418}
14419
14420// method id "healthcare.projects.locations.datasets.hl7V2Stores.messages.delete":
14421
14422type ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall struct {
14423	s          *Service
14424	name       string
14425	urlParams_ gensupport.URLParams
14426	ctx_       context.Context
14427	header_    http.Header
14428}
14429
14430// Delete: Deletes an HL7v2 message.
14431func (r *ProjectsLocationsDatasetsHl7V2StoresMessagesService) Delete(name string) *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall {
14432	c := &ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14433	c.name = name
14434	return c
14435}
14436
14437// Fields allows partial responses to be retrieved. See
14438// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14439// for more information.
14440func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall {
14441	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14442	return c
14443}
14444
14445// Context sets the context to be used in this call's Do method. Any
14446// pending HTTP request will be aborted if the provided context is
14447// canceled.
14448func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall {
14449	c.ctx_ = ctx
14450	return c
14451}
14452
14453// Header returns an http.Header that can be modified by the caller to
14454// add HTTP headers to the request.
14455func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall) Header() http.Header {
14456	if c.header_ == nil {
14457		c.header_ = make(http.Header)
14458	}
14459	return c.header_
14460}
14461
14462func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall) doRequest(alt string) (*http.Response, error) {
14463	reqHeaders := make(http.Header)
14464	for k, v := range c.header_ {
14465		reqHeaders[k] = v
14466	}
14467	reqHeaders.Set("User-Agent", c.s.userAgent())
14468	var body io.Reader = nil
14469	c.urlParams_.Set("alt", alt)
14470	c.urlParams_.Set("prettyPrint", "false")
14471	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
14472	urls += "?" + c.urlParams_.Encode()
14473	req, err := http.NewRequest("DELETE", urls, body)
14474	if err != nil {
14475		return nil, err
14476	}
14477	req.Header = reqHeaders
14478	googleapi.Expand(req.URL, map[string]string{
14479		"name": c.name,
14480	})
14481	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14482}
14483
14484// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.messages.delete" call.
14485// Exactly one of *Empty or error will be non-nil. Any non-2xx status
14486// code is an error. Response headers are in either
14487// *Empty.ServerResponse.Header or (if a response was returned at all)
14488// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
14489// check whether the returned error was because http.StatusNotModified
14490// was returned.
14491func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
14492	gensupport.SetOptions(c.urlParams_, opts...)
14493	res, err := c.doRequest("json")
14494	if res != nil && res.StatusCode == http.StatusNotModified {
14495		if res.Body != nil {
14496			res.Body.Close()
14497		}
14498		return nil, &googleapi.Error{
14499			Code:   res.StatusCode,
14500			Header: res.Header,
14501		}
14502	}
14503	if err != nil {
14504		return nil, err
14505	}
14506	defer googleapi.CloseBody(res)
14507	if err := googleapi.CheckResponse(res); err != nil {
14508		return nil, err
14509	}
14510	ret := &Empty{
14511		ServerResponse: googleapi.ServerResponse{
14512			Header:         res.Header,
14513			HTTPStatusCode: res.StatusCode,
14514		},
14515	}
14516	target := &ret
14517	if err := gensupport.DecodeResponse(target, res); err != nil {
14518		return nil, err
14519	}
14520	return ret, nil
14521	// {
14522	//   "description": "Deletes an HL7v2 message.",
14523	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}/messages/{messagesId}",
14524	//   "httpMethod": "DELETE",
14525	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.messages.delete",
14526	//   "parameterOrder": [
14527	//     "name"
14528	//   ],
14529	//   "parameters": {
14530	//     "name": {
14531	//       "description": "The resource name of the HL7v2 message to delete.",
14532	//       "location": "path",
14533	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+/messages/[^/]+$",
14534	//       "required": true,
14535	//       "type": "string"
14536	//     }
14537	//   },
14538	//   "path": "v1beta1/{+name}",
14539	//   "response": {
14540	//     "$ref": "Empty"
14541	//   },
14542	//   "scopes": [
14543	//     "https://www.googleapis.com/auth/cloud-platform"
14544	//   ]
14545	// }
14546
14547}
14548
14549// method id "healthcare.projects.locations.datasets.hl7V2Stores.messages.get":
14550
14551type ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall struct {
14552	s            *Service
14553	name         string
14554	urlParams_   gensupport.URLParams
14555	ifNoneMatch_ string
14556	ctx_         context.Context
14557	header_      http.Header
14558}
14559
14560// Get: Gets an HL7v2 message.
14561func (r *ProjectsLocationsDatasetsHl7V2StoresMessagesService) Get(name string) *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall {
14562	c := &ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14563	c.name = name
14564	return c
14565}
14566
14567// View sets the optional parameter "view": Specifies which parts of the
14568// Message resource should be returned
14569// in the response.
14570//
14571// Possible values:
14572//   "MESSAGE_VIEW_UNSPECIFIED"
14573//   "RAW_ONLY"
14574//   "PARSED_ONLY"
14575//   "FULL"
14576func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall) View(view string) *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall {
14577	c.urlParams_.Set("view", view)
14578	return c
14579}
14580
14581// Fields allows partial responses to be retrieved. See
14582// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14583// for more information.
14584func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall {
14585	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14586	return c
14587}
14588
14589// IfNoneMatch sets the optional parameter which makes the operation
14590// fail if the object's ETag matches the given value. This is useful for
14591// getting updates only after the object has changed since the last
14592// request. Use googleapi.IsNotModified to check whether the response
14593// error from Do is the result of In-None-Match.
14594func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall {
14595	c.ifNoneMatch_ = entityTag
14596	return c
14597}
14598
14599// Context sets the context to be used in this call's Do method. Any
14600// pending HTTP request will be aborted if the provided context is
14601// canceled.
14602func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall {
14603	c.ctx_ = ctx
14604	return c
14605}
14606
14607// Header returns an http.Header that can be modified by the caller to
14608// add HTTP headers to the request.
14609func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall) Header() http.Header {
14610	if c.header_ == nil {
14611		c.header_ = make(http.Header)
14612	}
14613	return c.header_
14614}
14615
14616func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall) doRequest(alt string) (*http.Response, error) {
14617	reqHeaders := make(http.Header)
14618	for k, v := range c.header_ {
14619		reqHeaders[k] = v
14620	}
14621	reqHeaders.Set("User-Agent", c.s.userAgent())
14622	if c.ifNoneMatch_ != "" {
14623		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
14624	}
14625	var body io.Reader = nil
14626	c.urlParams_.Set("alt", alt)
14627	c.urlParams_.Set("prettyPrint", "false")
14628	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
14629	urls += "?" + c.urlParams_.Encode()
14630	req, err := http.NewRequest("GET", urls, body)
14631	if err != nil {
14632		return nil, err
14633	}
14634	req.Header = reqHeaders
14635	googleapi.Expand(req.URL, map[string]string{
14636		"name": c.name,
14637	})
14638	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14639}
14640
14641// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.messages.get" call.
14642// Exactly one of *Message or error will be non-nil. Any non-2xx status
14643// code is an error. Response headers are in either
14644// *Message.ServerResponse.Header or (if a response was returned at all)
14645// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
14646// check whether the returned error was because http.StatusNotModified
14647// was returned.
14648func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesGetCall) Do(opts ...googleapi.CallOption) (*Message, error) {
14649	gensupport.SetOptions(c.urlParams_, opts...)
14650	res, err := c.doRequest("json")
14651	if res != nil && res.StatusCode == http.StatusNotModified {
14652		if res.Body != nil {
14653			res.Body.Close()
14654		}
14655		return nil, &googleapi.Error{
14656			Code:   res.StatusCode,
14657			Header: res.Header,
14658		}
14659	}
14660	if err != nil {
14661		return nil, err
14662	}
14663	defer googleapi.CloseBody(res)
14664	if err := googleapi.CheckResponse(res); err != nil {
14665		return nil, err
14666	}
14667	ret := &Message{
14668		ServerResponse: googleapi.ServerResponse{
14669			Header:         res.Header,
14670			HTTPStatusCode: res.StatusCode,
14671		},
14672	}
14673	target := &ret
14674	if err := gensupport.DecodeResponse(target, res); err != nil {
14675		return nil, err
14676	}
14677	return ret, nil
14678	// {
14679	//   "description": "Gets an HL7v2 message.",
14680	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}/messages/{messagesId}",
14681	//   "httpMethod": "GET",
14682	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.messages.get",
14683	//   "parameterOrder": [
14684	//     "name"
14685	//   ],
14686	//   "parameters": {
14687	//     "name": {
14688	//       "description": "The resource name of the HL7v2 message to retrieve.",
14689	//       "location": "path",
14690	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+/messages/[^/]+$",
14691	//       "required": true,
14692	//       "type": "string"
14693	//     },
14694	//     "view": {
14695	//       "description": "Specifies which parts of the Message resource should be returned\nin the response.",
14696	//       "enum": [
14697	//         "MESSAGE_VIEW_UNSPECIFIED",
14698	//         "RAW_ONLY",
14699	//         "PARSED_ONLY",
14700	//         "FULL"
14701	//       ],
14702	//       "location": "query",
14703	//       "type": "string"
14704	//     }
14705	//   },
14706	//   "path": "v1beta1/{+name}",
14707	//   "response": {
14708	//     "$ref": "Message"
14709	//   },
14710	//   "scopes": [
14711	//     "https://www.googleapis.com/auth/cloud-platform"
14712	//   ]
14713	// }
14714
14715}
14716
14717// method id "healthcare.projects.locations.datasets.hl7V2Stores.messages.ingest":
14718
14719type ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall struct {
14720	s                    *Service
14721	parent               string
14722	ingestmessagerequest *IngestMessageRequest
14723	urlParams_           gensupport.URLParams
14724	ctx_                 context.Context
14725	header_              http.Header
14726}
14727
14728// Ingest: Ingests a new HL7v2 message from the hospital and sends a
14729// notification to
14730// the Cloud Pub/Sub topic. Return is an HL7v2 ACK message if the
14731// message was
14732// successfully stored. Otherwise an error is returned.  If an
14733// identical
14734// HL7v2 message is created twice only one resource is created on the
14735// server
14736// and no error is reported.
14737func (r *ProjectsLocationsDatasetsHl7V2StoresMessagesService) Ingest(parent string, ingestmessagerequest *IngestMessageRequest) *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall {
14738	c := &ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14739	c.parent = parent
14740	c.ingestmessagerequest = ingestmessagerequest
14741	return c
14742}
14743
14744// Fields allows partial responses to be retrieved. See
14745// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14746// for more information.
14747func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall {
14748	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14749	return c
14750}
14751
14752// Context sets the context to be used in this call's Do method. Any
14753// pending HTTP request will be aborted if the provided context is
14754// canceled.
14755func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall {
14756	c.ctx_ = ctx
14757	return c
14758}
14759
14760// Header returns an http.Header that can be modified by the caller to
14761// add HTTP headers to the request.
14762func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall) Header() http.Header {
14763	if c.header_ == nil {
14764		c.header_ = make(http.Header)
14765	}
14766	return c.header_
14767}
14768
14769func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall) doRequest(alt string) (*http.Response, error) {
14770	reqHeaders := make(http.Header)
14771	for k, v := range c.header_ {
14772		reqHeaders[k] = v
14773	}
14774	reqHeaders.Set("User-Agent", c.s.userAgent())
14775	var body io.Reader = nil
14776	body, err := googleapi.WithoutDataWrapper.JSONReader(c.ingestmessagerequest)
14777	if err != nil {
14778		return nil, err
14779	}
14780	reqHeaders.Set("Content-Type", "application/json")
14781	c.urlParams_.Set("alt", alt)
14782	c.urlParams_.Set("prettyPrint", "false")
14783	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/messages:ingest")
14784	urls += "?" + c.urlParams_.Encode()
14785	req, err := http.NewRequest("POST", urls, body)
14786	if err != nil {
14787		return nil, err
14788	}
14789	req.Header = reqHeaders
14790	googleapi.Expand(req.URL, map[string]string{
14791		"parent": c.parent,
14792	})
14793	return gensupport.SendRequest(c.ctx_, c.s.client, req)
14794}
14795
14796// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.messages.ingest" call.
14797// Exactly one of *IngestMessageResponse or error will be non-nil. Any
14798// non-2xx status code is an error. Response headers are in either
14799// *IngestMessageResponse.ServerResponse.Header or (if a response was
14800// returned at all) in error.(*googleapi.Error).Header. Use
14801// googleapi.IsNotModified to check whether the returned error was
14802// because http.StatusNotModified was returned.
14803func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesIngestCall) Do(opts ...googleapi.CallOption) (*IngestMessageResponse, error) {
14804	gensupport.SetOptions(c.urlParams_, opts...)
14805	res, err := c.doRequest("json")
14806	if res != nil && res.StatusCode == http.StatusNotModified {
14807		if res.Body != nil {
14808			res.Body.Close()
14809		}
14810		return nil, &googleapi.Error{
14811			Code:   res.StatusCode,
14812			Header: res.Header,
14813		}
14814	}
14815	if err != nil {
14816		return nil, err
14817	}
14818	defer googleapi.CloseBody(res)
14819	if err := googleapi.CheckResponse(res); err != nil {
14820		return nil, err
14821	}
14822	ret := &IngestMessageResponse{
14823		ServerResponse: googleapi.ServerResponse{
14824			Header:         res.Header,
14825			HTTPStatusCode: res.StatusCode,
14826		},
14827	}
14828	target := &ret
14829	if err := gensupport.DecodeResponse(target, res); err != nil {
14830		return nil, err
14831	}
14832	return ret, nil
14833	// {
14834	//   "description": "Ingests a new HL7v2 message from the hospital and sends a notification to\nthe Cloud Pub/Sub topic. Return is an HL7v2 ACK message if the message was\nsuccessfully stored. Otherwise an error is returned.  If an identical\nHL7v2 message is created twice only one resource is created on the server\nand no error is reported.",
14835	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}/messages:ingest",
14836	//   "httpMethod": "POST",
14837	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.messages.ingest",
14838	//   "parameterOrder": [
14839	//     "parent"
14840	//   ],
14841	//   "parameters": {
14842	//     "parent": {
14843	//       "description": "The name of the HL7v2 store this message belongs to.",
14844	//       "location": "path",
14845	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+$",
14846	//       "required": true,
14847	//       "type": "string"
14848	//     }
14849	//   },
14850	//   "path": "v1beta1/{+parent}/messages:ingest",
14851	//   "request": {
14852	//     "$ref": "IngestMessageRequest"
14853	//   },
14854	//   "response": {
14855	//     "$ref": "IngestMessageResponse"
14856	//   },
14857	//   "scopes": [
14858	//     "https://www.googleapis.com/auth/cloud-platform"
14859	//   ]
14860	// }
14861
14862}
14863
14864// method id "healthcare.projects.locations.datasets.hl7V2Stores.messages.list":
14865
14866type ProjectsLocationsDatasetsHl7V2StoresMessagesListCall struct {
14867	s            *Service
14868	parent       string
14869	urlParams_   gensupport.URLParams
14870	ifNoneMatch_ string
14871	ctx_         context.Context
14872	header_      http.Header
14873}
14874
14875// List: Lists all the messages in the given HL7v2 store with support
14876// for filtering.
14877func (r *ProjectsLocationsDatasetsHl7V2StoresMessagesService) List(parent string) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
14878	c := &ProjectsLocationsDatasetsHl7V2StoresMessagesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
14879	c.parent = parent
14880	return c
14881}
14882
14883// Filter sets the optional parameter "filter": Restricts messages
14884// returned to those matching a filter.
14885// Syntax:
14886// https://cloud.google.com/appengine/docs/standard/python/search
14887// /query_strings
14888//
14889// Fields/functions available for filtering are:
14890//
14891// *  `message_type`, from the MSH-9 segment; for example
14892// `NOT message_type = "ADT"
14893// *  `send_date` or `sendDate`, the YYYY-MM-DD date the message was
14894// sent in
14895// the dataset's time_zone, from the MSH-7 segment; for
14896// example
14897// `send_date < "2017-01-02"
14898// *  `send_time`, the timestamp of when the message was sent, using
14899// the
14900// RFC3339 time format for comparisons, from the MSH-7 segment; for
14901// example
14902// `send_time < "2017-01-02T00:00:00-05:00"
14903// *  `send_facility`, the care center that the message came from, from
14904// the
14905// MSH-4 segment; for example `send_facility = "ABC"
14906// *  `HL7RegExp(expr)`, which does regular expression matching of
14907// `expr`
14908// against the message payload using re2
14909// (http://code.google.com/p/re2/)
14910// syntax; for example `HL7RegExp("^.*\|.*\|EMERG")`
14911// *  `PatientId(value, type)`, which matches if the message lists a
14912// patient
14913// having an ID of the given value and type in the PID-2, PID-3, or
14914// PID-4
14915// segments; for example `PatientId("123456", "MRN")`
14916// *  `labels.x`, a string value of the label with key `x` as set using
14917// the
14918// Message.labels
14919// map, for example `labels."priority"="high". The operator `:*` can be
14920// used
14921// to assert the existence of a label, for example
14922// `labels."priority":*`.
14923//
14924// Limitations on conjunctions:
14925//
14926// *  Negation on the patient ID function or the labels field is
14927// not
14928// supported, for example these queries are invalid:
14929// `NOT PatientId("123456", "MRN")`, `NOT labels."tag1":*`,
14930// `NOT labels."tag2"="val2".
14931// *  Conjunction of multiple patient ID functions is not supported,
14932// for
14933// example this query is invalid:
14934// `PatientId("123456", "MRN") AND PatientId("456789", "MRN")`.
14935// *  Conjunction of multiple labels fields is also not supported,
14936// for
14937// example this query is invalid: `labels."tag1":* AND
14938// labels."tag2"="val2".
14939// *  Conjunction of one patient ID function, one labels field and
14940// conditions
14941// on other fields is supported, for example this query is
14942// valid:
14943// `PatientId("123456", "MRN") AND labels."tag1":* AND message_type =
14944// "ADT".
14945func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) Filter(filter string) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
14946	c.urlParams_.Set("filter", filter)
14947	return c
14948}
14949
14950// OrderBy sets the optional parameter "orderBy": Orders messages
14951// returned by the specified order_by clause.
14952// Syntax:
14953// https://cloud.google.com/apis/design/design_patterns#sorting_order
14954//
14955// Fi
14956// elds available for ordering are:
14957//
14958// *  `send_time`
14959func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) OrderBy(orderBy string) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
14960	c.urlParams_.Set("orderBy", orderBy)
14961	return c
14962}
14963
14964// PageSize sets the optional parameter "pageSize": Limit on the number
14965// of messages to return in a single response.
14966// If zero the default page size of 100 is used.
14967func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
14968	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
14969	return c
14970}
14971
14972// PageToken sets the optional parameter "pageToken": The
14973// next_page_token value returned from the previous List request, if
14974// any.
14975func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
14976	c.urlParams_.Set("pageToken", pageToken)
14977	return c
14978}
14979
14980// Fields allows partial responses to be retrieved. See
14981// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
14982// for more information.
14983func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
14984	c.urlParams_.Set("fields", googleapi.CombineFields(s))
14985	return c
14986}
14987
14988// IfNoneMatch sets the optional parameter which makes the operation
14989// fail if the object's ETag matches the given value. This is useful for
14990// getting updates only after the object has changed since the last
14991// request. Use googleapi.IsNotModified to check whether the response
14992// error from Do is the result of In-None-Match.
14993func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
14994	c.ifNoneMatch_ = entityTag
14995	return c
14996}
14997
14998// Context sets the context to be used in this call's Do method. Any
14999// pending HTTP request will be aborted if the provided context is
15000// canceled.
15001func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall {
15002	c.ctx_ = ctx
15003	return c
15004}
15005
15006// Header returns an http.Header that can be modified by the caller to
15007// add HTTP headers to the request.
15008func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) Header() http.Header {
15009	if c.header_ == nil {
15010		c.header_ = make(http.Header)
15011	}
15012	return c.header_
15013}
15014
15015func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) doRequest(alt string) (*http.Response, error) {
15016	reqHeaders := make(http.Header)
15017	for k, v := range c.header_ {
15018		reqHeaders[k] = v
15019	}
15020	reqHeaders.Set("User-Agent", c.s.userAgent())
15021	if c.ifNoneMatch_ != "" {
15022		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
15023	}
15024	var body io.Reader = nil
15025	c.urlParams_.Set("alt", alt)
15026	c.urlParams_.Set("prettyPrint", "false")
15027	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/messages")
15028	urls += "?" + c.urlParams_.Encode()
15029	req, err := http.NewRequest("GET", urls, body)
15030	if err != nil {
15031		return nil, err
15032	}
15033	req.Header = reqHeaders
15034	googleapi.Expand(req.URL, map[string]string{
15035		"parent": c.parent,
15036	})
15037	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15038}
15039
15040// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.messages.list" call.
15041// Exactly one of *ListMessagesResponse or error will be non-nil. Any
15042// non-2xx status code is an error. Response headers are in either
15043// *ListMessagesResponse.ServerResponse.Header or (if a response was
15044// returned at all) in error.(*googleapi.Error).Header. Use
15045// googleapi.IsNotModified to check whether the returned error was
15046// because http.StatusNotModified was returned.
15047func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) Do(opts ...googleapi.CallOption) (*ListMessagesResponse, error) {
15048	gensupport.SetOptions(c.urlParams_, opts...)
15049	res, err := c.doRequest("json")
15050	if res != nil && res.StatusCode == http.StatusNotModified {
15051		if res.Body != nil {
15052			res.Body.Close()
15053		}
15054		return nil, &googleapi.Error{
15055			Code:   res.StatusCode,
15056			Header: res.Header,
15057		}
15058	}
15059	if err != nil {
15060		return nil, err
15061	}
15062	defer googleapi.CloseBody(res)
15063	if err := googleapi.CheckResponse(res); err != nil {
15064		return nil, err
15065	}
15066	ret := &ListMessagesResponse{
15067		ServerResponse: googleapi.ServerResponse{
15068			Header:         res.Header,
15069			HTTPStatusCode: res.StatusCode,
15070		},
15071	}
15072	target := &ret
15073	if err := gensupport.DecodeResponse(target, res); err != nil {
15074		return nil, err
15075	}
15076	return ret, nil
15077	// {
15078	//   "description": "Lists all the messages in the given HL7v2 store with support for filtering.",
15079	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}/messages",
15080	//   "httpMethod": "GET",
15081	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.messages.list",
15082	//   "parameterOrder": [
15083	//     "parent"
15084	//   ],
15085	//   "parameters": {
15086	//     "filter": {
15087	//       "description": "Restricts messages returned to those matching a filter. Syntax:\nhttps://cloud.google.com/appengine/docs/standard/python/search/query_strings\n\nFields/functions available for filtering are:\n\n*  `message_type`, from the MSH-9 segment; for example\n`NOT message_type = \"ADT\"`\n*  `send_date` or `sendDate`, the YYYY-MM-DD date the message was sent in\nthe dataset's time_zone, from the MSH-7 segment; for example\n`send_date \u003c \"2017-01-02\"`\n*  `send_time`, the timestamp of when the message was sent, using the\nRFC3339 time format for comparisons, from the MSH-7 segment; for example\n`send_time \u003c \"2017-01-02T00:00:00-05:00\"`\n*  `send_facility`, the care center that the message came from, from the\nMSH-4 segment; for example `send_facility = \"ABC\"`\n*  `HL7RegExp(expr)`, which does regular expression matching of `expr`\nagainst the message payload using re2 (http://code.google.com/p/re2/)\nsyntax; for example `HL7RegExp(\"^.*\\|.*\\|EMERG\")`\n*  `PatientId(value, type)`, which matches if the message lists a patient\nhaving an ID of the given value and type in the PID-2, PID-3, or PID-4\nsegments; for example `PatientId(\"123456\", \"MRN\")`\n*  `labels.x`, a string value of the label with key `x` as set using the\nMessage.labels\nmap, for example `labels.\"priority\"=\"high\"`. The operator `:*` can be used\nto assert the existence of a label, for example `labels.\"priority\":*`.\n\nLimitations on conjunctions:\n\n*  Negation on the patient ID function or the labels field is not\nsupported, for example these queries are invalid:\n`NOT PatientId(\"123456\", \"MRN\")`, `NOT labels.\"tag1\":*`,\n`NOT labels.\"tag2\"=\"val2\"`.\n*  Conjunction of multiple patient ID functions is not supported, for\nexample this query is invalid:\n`PatientId(\"123456\", \"MRN\") AND PatientId(\"456789\", \"MRN\")`.\n*  Conjunction of multiple labels fields is also not supported, for\nexample this query is invalid: `labels.\"tag1\":* AND labels.\"tag2\"=\"val2\"`.\n*  Conjunction of one patient ID function, one labels field and conditions\non other fields is supported, for example this query is valid:\n`PatientId(\"123456\", \"MRN\") AND labels.\"tag1\":* AND message_type = \"ADT\"`.",
15088	//       "location": "query",
15089	//       "type": "string"
15090	//     },
15091	//     "orderBy": {
15092	//       "description": "Orders messages returned by the specified order_by clause.\nSyntax: https://cloud.google.com/apis/design/design_patterns#sorting_order\n\nFields available for ordering are:\n\n*  `send_time`",
15093	//       "location": "query",
15094	//       "type": "string"
15095	//     },
15096	//     "pageSize": {
15097	//       "description": "Limit on the number of messages to return in a single response.\nIf zero the default page size of 100 is used.",
15098	//       "format": "int32",
15099	//       "location": "query",
15100	//       "type": "integer"
15101	//     },
15102	//     "pageToken": {
15103	//       "description": "The next_page_token value returned from the previous List request, if any.",
15104	//       "location": "query",
15105	//       "type": "string"
15106	//     },
15107	//     "parent": {
15108	//       "description": "Name of the HL7v2 store to retrieve messages from.",
15109	//       "location": "path",
15110	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+$",
15111	//       "required": true,
15112	//       "type": "string"
15113	//     }
15114	//   },
15115	//   "path": "v1beta1/{+parent}/messages",
15116	//   "response": {
15117	//     "$ref": "ListMessagesResponse"
15118	//   },
15119	//   "scopes": [
15120	//     "https://www.googleapis.com/auth/cloud-platform"
15121	//   ]
15122	// }
15123
15124}
15125
15126// Pages invokes f for each page of results.
15127// A non-nil error returned from f will halt the iteration.
15128// The provided context supersedes any context provided to the Context method.
15129func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesListCall) Pages(ctx context.Context, f func(*ListMessagesResponse) error) error {
15130	c.ctx_ = ctx
15131	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
15132	for {
15133		x, err := c.Do()
15134		if err != nil {
15135			return err
15136		}
15137		if err := f(x); err != nil {
15138			return err
15139		}
15140		if x.NextPageToken == "" {
15141			return nil
15142		}
15143		c.PageToken(x.NextPageToken)
15144	}
15145}
15146
15147// method id "healthcare.projects.locations.datasets.hl7V2Stores.messages.patch":
15148
15149type ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall struct {
15150	s          *Service
15151	name       string
15152	message    *Message
15153	urlParams_ gensupport.URLParams
15154	ctx_       context.Context
15155	header_    http.Header
15156}
15157
15158// Patch: Update the message.
15159func (r *ProjectsLocationsDatasetsHl7V2StoresMessagesService) Patch(name string, message *Message) *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall {
15160	c := &ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15161	c.name = name
15162	c.message = message
15163	return c
15164}
15165
15166// UpdateMask sets the optional parameter "updateMask": The update mask
15167// applies to the resource. For the `FieldMask`
15168// definition,
15169// see
15170// https://developers.google.com/protocol-buffers/docs/re
15171// ference/google.protobuf#fieldmask
15172// Only the `labels` field is allowed to be updated.
15173// The labels in the request will be merged with the existing set of
15174// labels.
15175// Existing labels with the same keys will be updated.
15176func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall {
15177	c.urlParams_.Set("updateMask", updateMask)
15178	return c
15179}
15180
15181// Fields allows partial responses to be retrieved. See
15182// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15183// for more information.
15184func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall {
15185	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15186	return c
15187}
15188
15189// Context sets the context to be used in this call's Do method. Any
15190// pending HTTP request will be aborted if the provided context is
15191// canceled.
15192func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall) Context(ctx context.Context) *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall {
15193	c.ctx_ = ctx
15194	return c
15195}
15196
15197// Header returns an http.Header that can be modified by the caller to
15198// add HTTP headers to the request.
15199func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall) Header() http.Header {
15200	if c.header_ == nil {
15201		c.header_ = make(http.Header)
15202	}
15203	return c.header_
15204}
15205
15206func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall) doRequest(alt string) (*http.Response, error) {
15207	reqHeaders := make(http.Header)
15208	for k, v := range c.header_ {
15209		reqHeaders[k] = v
15210	}
15211	reqHeaders.Set("User-Agent", c.s.userAgent())
15212	var body io.Reader = nil
15213	body, err := googleapi.WithoutDataWrapper.JSONReader(c.message)
15214	if err != nil {
15215		return nil, err
15216	}
15217	reqHeaders.Set("Content-Type", "application/json")
15218	c.urlParams_.Set("alt", alt)
15219	c.urlParams_.Set("prettyPrint", "false")
15220	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
15221	urls += "?" + c.urlParams_.Encode()
15222	req, err := http.NewRequest("PATCH", urls, body)
15223	if err != nil {
15224		return nil, err
15225	}
15226	req.Header = reqHeaders
15227	googleapi.Expand(req.URL, map[string]string{
15228		"name": c.name,
15229	})
15230	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15231}
15232
15233// Do executes the "healthcare.projects.locations.datasets.hl7V2Stores.messages.patch" call.
15234// Exactly one of *Message or error will be non-nil. Any non-2xx status
15235// code is an error. Response headers are in either
15236// *Message.ServerResponse.Header or (if a response was returned at all)
15237// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
15238// check whether the returned error was because http.StatusNotModified
15239// was returned.
15240func (c *ProjectsLocationsDatasetsHl7V2StoresMessagesPatchCall) Do(opts ...googleapi.CallOption) (*Message, error) {
15241	gensupport.SetOptions(c.urlParams_, opts...)
15242	res, err := c.doRequest("json")
15243	if res != nil && res.StatusCode == http.StatusNotModified {
15244		if res.Body != nil {
15245			res.Body.Close()
15246		}
15247		return nil, &googleapi.Error{
15248			Code:   res.StatusCode,
15249			Header: res.Header,
15250		}
15251	}
15252	if err != nil {
15253		return nil, err
15254	}
15255	defer googleapi.CloseBody(res)
15256	if err := googleapi.CheckResponse(res); err != nil {
15257		return nil, err
15258	}
15259	ret := &Message{
15260		ServerResponse: googleapi.ServerResponse{
15261			Header:         res.Header,
15262			HTTPStatusCode: res.StatusCode,
15263		},
15264	}
15265	target := &ret
15266	if err := gensupport.DecodeResponse(target, res); err != nil {
15267		return nil, err
15268	}
15269	return ret, nil
15270	// {
15271	//   "description": "Update the message.",
15272	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/hl7V2Stores/{hl7V2StoresId}/messages/{messagesId}",
15273	//   "httpMethod": "PATCH",
15274	//   "id": "healthcare.projects.locations.datasets.hl7V2Stores.messages.patch",
15275	//   "parameterOrder": [
15276	//     "name"
15277	//   ],
15278	//   "parameters": {
15279	//     "name": {
15280	//       "description": "Resource name of the Message, of the form\n`projects/{project_id}/datasets/{dataset_id}/hl7V2Stores/{hl7_v2_store_id}/messages/{message_id}`.\nAssigned by the server.",
15281	//       "location": "path",
15282	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/hl7V2Stores/[^/]+/messages/[^/]+$",
15283	//       "required": true,
15284	//       "type": "string"
15285	//     },
15286	//     "updateMask": {
15287	//       "description": "The update mask applies to the resource. For the `FieldMask` definition,\nsee\nhttps://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask\nOnly the `labels` field is allowed to be updated.\nThe labels in the request will be merged with the existing set of labels.\nExisting labels with the same keys will be updated.",
15288	//       "format": "google-fieldmask",
15289	//       "location": "query",
15290	//       "type": "string"
15291	//     }
15292	//   },
15293	//   "path": "v1beta1/{+name}",
15294	//   "request": {
15295	//     "$ref": "Message"
15296	//   },
15297	//   "response": {
15298	//     "$ref": "Message"
15299	//   },
15300	//   "scopes": [
15301	//     "https://www.googleapis.com/auth/cloud-platform"
15302	//   ]
15303	// }
15304
15305}
15306
15307// method id "healthcare.projects.locations.datasets.operations.get":
15308
15309type ProjectsLocationsDatasetsOperationsGetCall struct {
15310	s            *Service
15311	name         string
15312	urlParams_   gensupport.URLParams
15313	ifNoneMatch_ string
15314	ctx_         context.Context
15315	header_      http.Header
15316}
15317
15318// Get: Gets the latest state of a long-running operation.  Clients can
15319// use this
15320// method to poll the operation result at intervals as recommended by
15321// the API
15322// service.
15323func (r *ProjectsLocationsDatasetsOperationsService) Get(name string) *ProjectsLocationsDatasetsOperationsGetCall {
15324	c := &ProjectsLocationsDatasetsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15325	c.name = name
15326	return c
15327}
15328
15329// Fields allows partial responses to be retrieved. See
15330// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15331// for more information.
15332func (c *ProjectsLocationsDatasetsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsOperationsGetCall {
15333	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15334	return c
15335}
15336
15337// IfNoneMatch sets the optional parameter which makes the operation
15338// fail if the object's ETag matches the given value. This is useful for
15339// getting updates only after the object has changed since the last
15340// request. Use googleapi.IsNotModified to check whether the response
15341// error from Do is the result of In-None-Match.
15342func (c *ProjectsLocationsDatasetsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsOperationsGetCall {
15343	c.ifNoneMatch_ = entityTag
15344	return c
15345}
15346
15347// Context sets the context to be used in this call's Do method. Any
15348// pending HTTP request will be aborted if the provided context is
15349// canceled.
15350func (c *ProjectsLocationsDatasetsOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsDatasetsOperationsGetCall {
15351	c.ctx_ = ctx
15352	return c
15353}
15354
15355// Header returns an http.Header that can be modified by the caller to
15356// add HTTP headers to the request.
15357func (c *ProjectsLocationsDatasetsOperationsGetCall) Header() http.Header {
15358	if c.header_ == nil {
15359		c.header_ = make(http.Header)
15360	}
15361	return c.header_
15362}
15363
15364func (c *ProjectsLocationsDatasetsOperationsGetCall) doRequest(alt string) (*http.Response, error) {
15365	reqHeaders := make(http.Header)
15366	for k, v := range c.header_ {
15367		reqHeaders[k] = v
15368	}
15369	reqHeaders.Set("User-Agent", c.s.userAgent())
15370	if c.ifNoneMatch_ != "" {
15371		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
15372	}
15373	var body io.Reader = nil
15374	c.urlParams_.Set("alt", alt)
15375	c.urlParams_.Set("prettyPrint", "false")
15376	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}")
15377	urls += "?" + c.urlParams_.Encode()
15378	req, err := http.NewRequest("GET", urls, body)
15379	if err != nil {
15380		return nil, err
15381	}
15382	req.Header = reqHeaders
15383	googleapi.Expand(req.URL, map[string]string{
15384		"name": c.name,
15385	})
15386	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15387}
15388
15389// Do executes the "healthcare.projects.locations.datasets.operations.get" call.
15390// Exactly one of *Operation or error will be non-nil. Any non-2xx
15391// status code is an error. Response headers are in either
15392// *Operation.ServerResponse.Header or (if a response was returned at
15393// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified
15394// to check whether the returned error was because
15395// http.StatusNotModified was returned.
15396func (c *ProjectsLocationsDatasetsOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
15397	gensupport.SetOptions(c.urlParams_, opts...)
15398	res, err := c.doRequest("json")
15399	if res != nil && res.StatusCode == http.StatusNotModified {
15400		if res.Body != nil {
15401			res.Body.Close()
15402		}
15403		return nil, &googleapi.Error{
15404			Code:   res.StatusCode,
15405			Header: res.Header,
15406		}
15407	}
15408	if err != nil {
15409		return nil, err
15410	}
15411	defer googleapi.CloseBody(res)
15412	if err := googleapi.CheckResponse(res); err != nil {
15413		return nil, err
15414	}
15415	ret := &Operation{
15416		ServerResponse: googleapi.ServerResponse{
15417			Header:         res.Header,
15418			HTTPStatusCode: res.StatusCode,
15419		},
15420	}
15421	target := &ret
15422	if err := gensupport.DecodeResponse(target, res); err != nil {
15423		return nil, err
15424	}
15425	return ret, nil
15426	// {
15427	//   "description": "Gets the latest state of a long-running operation.  Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.",
15428	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/operations/{operationsId}",
15429	//   "httpMethod": "GET",
15430	//   "id": "healthcare.projects.locations.datasets.operations.get",
15431	//   "parameterOrder": [
15432	//     "name"
15433	//   ],
15434	//   "parameters": {
15435	//     "name": {
15436	//       "description": "The name of the operation resource.",
15437	//       "location": "path",
15438	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+/operations/[^/]+$",
15439	//       "required": true,
15440	//       "type": "string"
15441	//     }
15442	//   },
15443	//   "path": "v1beta1/{+name}",
15444	//   "response": {
15445	//     "$ref": "Operation"
15446	//   },
15447	//   "scopes": [
15448	//     "https://www.googleapis.com/auth/cloud-platform"
15449	//   ]
15450	// }
15451
15452}
15453
15454// method id "healthcare.projects.locations.datasets.operations.list":
15455
15456type ProjectsLocationsDatasetsOperationsListCall struct {
15457	s            *Service
15458	name         string
15459	urlParams_   gensupport.URLParams
15460	ifNoneMatch_ string
15461	ctx_         context.Context
15462	header_      http.Header
15463}
15464
15465// List: Lists operations that match the specified filter in the
15466// request. If the
15467// server doesn't support this method, it returns
15468// `UNIMPLEMENTED`.
15469//
15470// NOTE: the `name` binding allows API services to override the
15471// binding
15472// to use different resource name schemes, such as `users/*/operations`.
15473// To
15474// override the binding, API services can add a binding such
15475// as
15476// "/v1/{name=users/*}/operations" to their service configuration.
15477// For backwards compatibility, the default name includes the
15478// operations
15479// collection id, however overriding users must ensure the name
15480// binding
15481// is the parent resource, without the operations collection id.
15482func (r *ProjectsLocationsDatasetsOperationsService) List(name string) *ProjectsLocationsDatasetsOperationsListCall {
15483	c := &ProjectsLocationsDatasetsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
15484	c.name = name
15485	return c
15486}
15487
15488// Filter sets the optional parameter "filter": The standard list
15489// filter.
15490func (c *ProjectsLocationsDatasetsOperationsListCall) Filter(filter string) *ProjectsLocationsDatasetsOperationsListCall {
15491	c.urlParams_.Set("filter", filter)
15492	return c
15493}
15494
15495// PageSize sets the optional parameter "pageSize": The standard list
15496// page size.
15497func (c *ProjectsLocationsDatasetsOperationsListCall) PageSize(pageSize int64) *ProjectsLocationsDatasetsOperationsListCall {
15498	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
15499	return c
15500}
15501
15502// PageToken sets the optional parameter "pageToken": The standard list
15503// page token.
15504func (c *ProjectsLocationsDatasetsOperationsListCall) PageToken(pageToken string) *ProjectsLocationsDatasetsOperationsListCall {
15505	c.urlParams_.Set("pageToken", pageToken)
15506	return c
15507}
15508
15509// Fields allows partial responses to be retrieved. See
15510// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
15511// for more information.
15512func (c *ProjectsLocationsDatasetsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsDatasetsOperationsListCall {
15513	c.urlParams_.Set("fields", googleapi.CombineFields(s))
15514	return c
15515}
15516
15517// IfNoneMatch sets the optional parameter which makes the operation
15518// fail if the object's ETag matches the given value. This is useful for
15519// getting updates only after the object has changed since the last
15520// request. Use googleapi.IsNotModified to check whether the response
15521// error from Do is the result of In-None-Match.
15522func (c *ProjectsLocationsDatasetsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsDatasetsOperationsListCall {
15523	c.ifNoneMatch_ = entityTag
15524	return c
15525}
15526
15527// Context sets the context to be used in this call's Do method. Any
15528// pending HTTP request will be aborted if the provided context is
15529// canceled.
15530func (c *ProjectsLocationsDatasetsOperationsListCall) Context(ctx context.Context) *ProjectsLocationsDatasetsOperationsListCall {
15531	c.ctx_ = ctx
15532	return c
15533}
15534
15535// Header returns an http.Header that can be modified by the caller to
15536// add HTTP headers to the request.
15537func (c *ProjectsLocationsDatasetsOperationsListCall) Header() http.Header {
15538	if c.header_ == nil {
15539		c.header_ = make(http.Header)
15540	}
15541	return c.header_
15542}
15543
15544func (c *ProjectsLocationsDatasetsOperationsListCall) doRequest(alt string) (*http.Response, error) {
15545	reqHeaders := make(http.Header)
15546	for k, v := range c.header_ {
15547		reqHeaders[k] = v
15548	}
15549	reqHeaders.Set("User-Agent", c.s.userAgent())
15550	if c.ifNoneMatch_ != "" {
15551		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
15552	}
15553	var body io.Reader = nil
15554	c.urlParams_.Set("alt", alt)
15555	c.urlParams_.Set("prettyPrint", "false")
15556	urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}/operations")
15557	urls += "?" + c.urlParams_.Encode()
15558	req, err := http.NewRequest("GET", urls, body)
15559	if err != nil {
15560		return nil, err
15561	}
15562	req.Header = reqHeaders
15563	googleapi.Expand(req.URL, map[string]string{
15564		"name": c.name,
15565	})
15566	return gensupport.SendRequest(c.ctx_, c.s.client, req)
15567}
15568
15569// Do executes the "healthcare.projects.locations.datasets.operations.list" call.
15570// Exactly one of *ListOperationsResponse or error will be non-nil. Any
15571// non-2xx status code is an error. Response headers are in either
15572// *ListOperationsResponse.ServerResponse.Header or (if a response was
15573// returned at all) in error.(*googleapi.Error).Header. Use
15574// googleapi.IsNotModified to check whether the returned error was
15575// because http.StatusNotModified was returned.
15576func (c *ProjectsLocationsDatasetsOperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, error) {
15577	gensupport.SetOptions(c.urlParams_, opts...)
15578	res, err := c.doRequest("json")
15579	if res != nil && res.StatusCode == http.StatusNotModified {
15580		if res.Body != nil {
15581			res.Body.Close()
15582		}
15583		return nil, &googleapi.Error{
15584			Code:   res.StatusCode,
15585			Header: res.Header,
15586		}
15587	}
15588	if err != nil {
15589		return nil, err
15590	}
15591	defer googleapi.CloseBody(res)
15592	if err := googleapi.CheckResponse(res); err != nil {
15593		return nil, err
15594	}
15595	ret := &ListOperationsResponse{
15596		ServerResponse: googleapi.ServerResponse{
15597			Header:         res.Header,
15598			HTTPStatusCode: res.StatusCode,
15599		},
15600	}
15601	target := &ret
15602	if err := gensupport.DecodeResponse(target, res); err != nil {
15603		return nil, err
15604	}
15605	return ret, nil
15606	// {
15607	//   "description": "Lists operations that match the specified filter in the request. If the\nserver doesn't support this method, it returns `UNIMPLEMENTED`.\n\nNOTE: the `name` binding allows API services to override the binding\nto use different resource name schemes, such as `users/*/operations`. To\noverride the binding, API services can add a binding such as\n`\"/v1/{name=users/*}/operations\"` to their service configuration.\nFor backwards compatibility, the default name includes the operations\ncollection id, however overriding users must ensure the name binding\nis the parent resource, without the operations collection id.",
15608	//   "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/datasets/{datasetsId}/operations",
15609	//   "httpMethod": "GET",
15610	//   "id": "healthcare.projects.locations.datasets.operations.list",
15611	//   "parameterOrder": [
15612	//     "name"
15613	//   ],
15614	//   "parameters": {
15615	//     "filter": {
15616	//       "description": "The standard list filter.",
15617	//       "location": "query",
15618	//       "type": "string"
15619	//     },
15620	//     "name": {
15621	//       "description": "The name of the operation's parent resource.",
15622	//       "location": "path",
15623	//       "pattern": "^projects/[^/]+/locations/[^/]+/datasets/[^/]+$",
15624	//       "required": true,
15625	//       "type": "string"
15626	//     },
15627	//     "pageSize": {
15628	//       "description": "The standard list page size.",
15629	//       "format": "int32",
15630	//       "location": "query",
15631	//       "type": "integer"
15632	//     },
15633	//     "pageToken": {
15634	//       "description": "The standard list page token.",
15635	//       "location": "query",
15636	//       "type": "string"
15637	//     }
15638	//   },
15639	//   "path": "v1beta1/{+name}/operations",
15640	//   "response": {
15641	//     "$ref": "ListOperationsResponse"
15642	//   },
15643	//   "scopes": [
15644	//     "https://www.googleapis.com/auth/cloud-platform"
15645	//   ]
15646	// }
15647
15648}
15649
15650// Pages invokes f for each page of results.
15651// A non-nil error returned from f will halt the iteration.
15652// The provided context supersedes any context provided to the Context method.
15653func (c *ProjectsLocationsDatasetsOperationsListCall) Pages(ctx context.Context, f func(*ListOperationsResponse) error) error {
15654	c.ctx_ = ctx
15655	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
15656	for {
15657		x, err := c.Do()
15658		if err != nil {
15659			return err
15660		}
15661		if err := f(x); err != nil {
15662			return err
15663		}
15664		if x.NextPageToken == "" {
15665			return nil
15666		}
15667		c.PageToken(x.NextPageToken)
15668	}
15669}
15670