From e34e688338e1d74293327f7ca74b103ab15cc0a4 Mon Sep 17 00:00:00 2001 From: archita-ekkirala Date: Wed, 4 Dec 2024 22:39:12 -0600 Subject: [PATCH] LANTERN-806: Add webscraper for interop url --- .../chplendpointquerier.go | 3 +++ .../chplendpointquerier/interopwebscraper.go | 22 +++++++++++++++++++ 2 files changed, 25 insertions(+) create mode 100644 endpointmanager/pkg/chplendpointquerier/interopwebscraper.go diff --git a/endpointmanager/pkg/chplendpointquerier/chplendpointquerier.go b/endpointmanager/pkg/chplendpointquerier/chplendpointquerier.go index efad48361..c0fb5fdf9 100644 --- a/endpointmanager/pkg/chplendpointquerier/chplendpointquerier.go +++ b/endpointmanager/pkg/chplendpointquerier/chplendpointquerier.go @@ -197,6 +197,7 @@ var curemdURL = "https://www.curemd.com/developer/base-fhir-urls/" var emdscloudURL = "https://identity.emdscloud.com/api/api-resource/fhir" var betaAfoundriaURL = "https://beta.afoundria.com/api/fhir/urls" var ehealthlineURL = "http://ehealthline.com/dev/pdf/FHIR%20API%20Endpoints.htm" +var interopURL = "https://interop.ehnote.com/fhir" var bundleQuerierArray = [30]string{"https://ac-fhir.harrisambulatory.com/endpoints/r4", "https://dynamicfhirpresentation.dynamicfhirsandbox.com/fhir/r4/endpoints", "https://ct-fhir.harrisambulatory.com/Endpoints/R4", "https://kantime.com/wp-content/uploads/2024/03/fhir-base-urls.json", @@ -588,6 +589,8 @@ func QueryCHPLEndpointList(chplURL string, fileToWriteTo string) { CSVParser(chplURL, fileToWriteTo, "./endpoints.csv", -1, 0, true, 1, 0) } else if URLsEqual(chplURL, ehealthlineURL) { EhealthlineWebscraper(ehealthlineURL, fileToWriteTo) + } else if URLsEqual(chplURL, interopURL) { + InteropWebscraper(chplURL, fileToWriteTo) } else { log.Warnf("Handler is required for url %s", chplURL) } diff --git a/endpointmanager/pkg/chplendpointquerier/interopwebscraper.go b/endpointmanager/pkg/chplendpointquerier/interopwebscraper.go new file mode 100644 index 000000000..70a50ec24 --- /dev/null +++ b/endpointmanager/pkg/chplendpointquerier/interopwebscraper.go @@ -0,0 +1,22 @@ +package chplendpointquerier + +import ( + "strings" + + log "github.com/sirupsen/logrus" +) + +func InteropWebscraper(CHPLURL string, fileToWriteTo string) { + + var lanternEntryList []LanternEntry + var endpointEntryList EndpointList + var entry LanternEntry + entry.URL = strings.TrimSpace(CHPLURL) + lanternEntryList = append(lanternEntryList, entry) + endpointEntryList.Endpoints = lanternEntryList + err := WriteCHPLFile(endpointEntryList, fileToWriteTo) + if err != nil { + log.Fatal(err) + } + +}