public FhirResponse GetFhirResponse(Interaction interaction, object input) { ConditionalHeaderParameters parameters = ConvertInput(input); if (parameters == null) { return(null); } bool?matchTags = parameters.IfNoneMatchTags.Any() ? parameters.IfNoneMatchTags.Any(t => t == ETag.Create(interaction.Key.VersionId).Tag) : (bool?)null; bool?matchModifiedDate = parameters.IfModifiedSince.HasValue ? parameters.IfModifiedSince.Value < interaction.Resource.Meta.LastUpdated : (bool?)null; if (!matchTags.HasValue && !matchModifiedDate.HasValue) { return(null); } if ((matchTags ?? true) && (matchModifiedDate ?? true)) { return(Respond.WithCode(HttpStatusCode.NotModified)); } return(null); }
public ActionResult <FhirResponse> Read(string type, string id) { ConditionalHeaderParameters parameters = new ConditionalHeaderParameters(Request); Key key = Key.Create(type, id); return(new ActionResult <FhirResponse>(_fhirService.Read(key, parameters))); }
public async Task <FhirResponse> Read(string type, string id) { ConditionalHeaderParameters parameters = new ConditionalHeaderParameters(Request); Key key = Key.Create(type, id); return(await _fhirService.ReadAsync(key, parameters)); }
public FhirResponse Read(string type, string id) { ConditionalHeaderParameters parameters = new ConditionalHeaderParameters(Request); Key key = Key.Create(type, id); FhirResponse response = _fhirService.Read(key, parameters); return(response); }
public FhirResponse Read(IKey key, ConditionalHeaderParameters parameters = null) { ValidateKey(key); Entry entry = GetFeature <IResourceStorageService>().Get(key); return(responseFactory.GetFhirResponse(entry, key, parameters)); }
public async Task <ActionResult <FhirResponse> > Read(string type, string id) { ConditionalHeaderParameters parameters = new ConditionalHeaderParameters(Request); Key key = Key.Create(type, id); var response = await _fhirService.ReadAsync(key, parameters).ConfigureAwait(false); return(new ActionResult <FhirResponse>(response)); }
public FhirResponse Read(Key key, ConditionalHeaderParameters parameters = null) { _log.ServiceMethodCalled("read"); ValidateKey(key); return(responseFactory.GetFhirResponse(key, parameters)); }
public ServerFhirResponse Read(IKey key, ConditionalHeaderParameters parameters = null) { //ValidateKey(key); DomainResource patient = fhirClient.Read <DomainResource>(key.ToRelativeUri().ToString()); FhirResponseFactory responseFactory = new FhirResponseFactory(); Entry entry = Entry.Create(Bundle.HTTPVerb.GET, key, patient); return(responseFactory.GetFhirResponse(entry, key, parameters)); }
public ActionResult <FhirResponse> VRead(string type, string id, string versionId) { ConditionalHeaderParameters parameters = new ConditionalHeaderParameters(Request); var fhirParams = Key.Create(type, id, versionId); var queryHandlerFactory = this._provider.GetService(typeof(QueryHandlerFactory)) as QueryHandlerFactory; var handler = queryHandlerFactory.GetHandler(nameof(Read)); return(handler.Handle(fhirParams)); }
public async Task <ActionResult <FhirResponse> > Read(string type, string id) { ConditionalHeaderParameters parameters = new ConditionalHeaderParameters(Request); var fhirParams = Key.Create(type, id); var queryHandlerFactory = this._provider.GetService(typeof(QueryHandlerFactory)) as QueryHandlerFactory; var handler = queryHandlerFactory.GetHandler(nameof(Read)); return(await new TaskFactory().StartNew(() => handler.Handle(fhirParams))); }
public async Task <ActionResult <List <SynapseResource> > > GetObservation(string personId) { ConditionalHeaderParameters parameters = new ConditionalHeaderParameters(Request); var queryHandlerFactory = this._provider.GetService(typeof(SynapseDataQueryHandlerFactory)) as SynapseDataQueryHandlerFactory; var handler = queryHandlerFactory.GetHandler("custom_observation_read"); var handlerTask = new TaskFactory().StartNew(() => { var synResourceData = handler.Handle(personId); return(synResourceData.SynapseResources); }); return(await handlerTask); }
public ActionResult <FhirResponse> ReadAsyncV2(string type, string id) { ConditionalHeaderParameters parameters = new ConditionalHeaderParameters(Request); var fhirParams = Key.Create(type, id); var queryHandlerFactory = this._provider.GetService(typeof(QueryHandlerFactory)) as QueryHandlerFactory; var handler = queryHandlerFactory.GetHandler("Read"); return(handler.Handle(fhirParams)); //var handlerTask = new TaskFactory().StartNew(() => handler.Handle(fhirParams)); //return await handlerTask; }
public async Task <ActionResult <List <SynapseResource> > > GetObservation(string personId) { ConditionalHeaderParameters parameters = new ConditionalHeaderParameters(Request); var queryHandlerFactory = this._provider.GetService(typeof(SynapseDataQueryHandlerFactory)) as SynapseDataQueryHandlerFactory; var handler = queryHandlerFactory.GetHandler("custom_observation_read"); var handlerTask = new TaskFactory().StartNew(() => { var synResourceData = handler.Handle(personId); return(synResourceData.SynapseResources); //var obsRoot = new List<ObservationRoot>() { // new ObservationRoot { // ObservationEvent = new ObservationEventDTO { Encounter_Id = "121212121" }, // Observations = new List<ObservationDTO> {new ObservationDTO { Observationevent_Id="1112121213"} } // }, // new ObservationRoot { // ObservationEvent = new ObservationEventDTO { Encounter_Id = "333333" }, // Observations = new List<ObservationDTO> {new ObservationDTO { Observationevent_Id="3333333344"} } // } //}; //var sn = new List<SynapseResource>(); //obsRoot.Each(o => sn.Add(o)); //return sn; //return new ObservationRoot //{ // ObservationEvent = new ObservationEventDTO { Encounter_Id = "121212121" }, // Observations = new List<ObservationDTO> { new ObservationDTO { Observationevent_Id = "1112121213" } } //}; }); return(await handlerTask); }