PharmacyFHIRDataSource
public struct PharmacyFHIRDataSource : PharmacyRemoteDataStore
The remote data source for any pharmacy requests
-
Default initializer of
PharmacyFHIRDataSource
Declaration
Swift
public init(fhirClient: FHIRClient)
Parameters
fhirClient
FHIRClient which is capable to perform FHIR requests
-
API for requesting pharmacies with the passed search term
[REQ:gemSpec_eRp_FdV:A_20183]
Declaration
Swift
public func searchPharmacies( by searchTerm: String, position: Pharmacy.Position?, filter: [PharmacyRemoteDataStoreFilter] ) -> AnyPublisher<[PharmacyLocation], Error>
Parameters
searchTerm
String that send to the server for filtering the pharmacies response
position
Position (latitude and longitude) of pharmacy
filter
further filter parameters for pharmacies
Return Value
AnyPublisher
that emits allPharmacyLocation
s for the givensearchTerm
-
Convenience function for requesting a certain pharmacy by ID
Declaration
Swift
public func fetchPharmacy( by telematikId: String ) -> AnyPublisher<PharmacyLocation?, Error>
Parameters
telematikId
The Telematik-ID of the pharmacy to be requested
Return Value
AnyPublisher
that emits thePharmacyLocation
or nil when not found -
Declaration
Swift
public func loadAvsCertificates(for locationId: String) -> AnyPublisher<[X509], Error>
-
Load
Insurance
by institution identifier (IK) from a remote (server).Declaration
Swift
public func fetchInsurance(by ikNumber: String) -> AnyPublisher<Insurance?, Error>
Parameters
ikNumber
The institution (IK) identifier of the organization to be requested
Return Value
AnyPublisher
that emits theTelematikId
or nil when not found -
Loads an array of
Insurance
from a remote (server).Declaration
Swift
public func fetchAllInsurances() -> AnyPublisher<[Insurance], Error>
Return Value
AnyPublisher
that emits array ofInsurance
or empty when nothing is found -
Converts pharmacy filter into query parameters
Declaration
Swift
public func apiFilters(for filter: [PharmacyRepositoryFilter]) -> [PharmacyRemoteDataStoreFilter]
Parameters
filter
PharmacyRepositoryFilter
s for filtering the pharmacy responseReturn Value
Key / value query parameters to use in url requests
-
Declaration
Swift
public enum Error : Swift.Error, Equatable