FhirRequest.search constructor

const FhirRequest.search({
  1. required Uri base,
  2. required R5ResourceType type,
  3. @Default(false) bool pretty,
  4. @Default(Summary.none) Summary summary,
  5. @Default('json') String format,
  6. @Default(<String>[]) List<String> elements,
  7. @Default(<String>[]) List<String> parameters,
  8. @Default(false) bool usePost,
  9. @Default(RestfulRequest.get_) RestfulRequest restfulRequest,
  10. MimeType? mimeType,
  11. @Default('application/fhir+json') String accept,
  12. @JsonKey(includeFromJson: false, includeToJson: false) Client? client,
  13. Map<String, String>? headers,
})

SEARCH constructor base - the base URI for the FHIR server type - the type of resource you're looking for pretty - pretty print the json formatting in the response summary - do you want the result to be a summary format - currently requests json, but could consider requesting json+fhir or fhir+json (would not request XML as this library doesn't work with XML) elements - elements you need to pass in parameters - any extra parameters usePost - defines if you would prefer to use a post request instead of a get request for this search mimeType - specify the MimeType in the Header - this should be fhir+json but there are some older systems that won't accept that client - if there's a specific client that you're going to be using

Implementation

const factory FhirRequest.search({
  /// [base] - the base URI for the FHIR server
  required Uri base,

  /// [type] - the type of resource you're looking for
  required R5ResourceType type,

  /// [pretty] - pretty print the json formatting in the response
  @Default(false) bool pretty,

  /// [summary] - do you want the result to be a summary
  @Default(Summary.none) Summary summary,

  /// [format] - currently requests json, but could consider requesting
  ///   json+fhir or fhir+json (would not request XML as this library doesn't
  ///   work with XML)
  @Default('json') String format,

  /// [elements] - elements you need to pass in
  @Default(<String>[]) List<String> elements,

  /// [parameters] - any extra parameters
  @Default(<String>[]) List<String> parameters,

  /// [usePost] - defines if you would prefer to use a post request instead of
  ///   a get request for this search
  @Default(false) bool usePost,
  @Default(RestfulRequest.get_) RestfulRequest restfulRequest,

  /// [mimeType] - specify the MimeType in the Header - this should be fhir+json
  ///   but there are some older systems that won't accept that
  MimeType? mimeType,

  /// [accept] - this will default to fhir+json just so it will stop sending
  /// me XML - I hate XML
  @Default('application/fhir+json') String accept,

  /// [client] - if there's a specific client that you're going to be using
  // ignore: invalid_annotation_target
  @JsonKey(includeFromJson: false, includeToJson: false) Client? client,

  /// [headers] - because there are some times it's easier to incldue the
  /// headers in the object instead of only passing it in with the
  /// request
  Map<String, String>? headers,
}) = FhirSearchRequest;