001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017package ca.uhn.fhir.model.dstu2.resource; 018 019import java.math.BigDecimal; 020import java.net.URI; 021import java.util.*; 022import ca.uhn.fhir.model.api.*; 023import ca.uhn.fhir.model.api.annotation.*; 024import ca.uhn.fhir.rest.gclient.*; 025 026import ca.uhn.fhir.model.dstu2.valueset.AccountStatusEnum; 027import ca.uhn.fhir.model.dstu2.valueset.ActionListEnum; 028import ca.uhn.fhir.model.dstu2.composite.AddressDt; 029import ca.uhn.fhir.model.dstu2.valueset.AdjudicationCodesEnum; 030import ca.uhn.fhir.model.dstu2.valueset.AdjudicationErrorCodesEnum; 031import ca.uhn.fhir.model.dstu2.valueset.AdjustmentReasonCodesEnum; 032import ca.uhn.fhir.model.dstu2.valueset.AdministrativeGenderEnum; 033import ca.uhn.fhir.model.dstu2.valueset.AdmitSourceEnum; 034import ca.uhn.fhir.model.dstu2.resource.AllergyIntolerance; 035import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceCategoryEnum; 036import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceCertaintyEnum; 037import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceCriticalityEnum; 038import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceSeverityEnum; 039import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceStatusEnum; 040import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceTypeEnum; 041import ca.uhn.fhir.model.dstu2.valueset.AnimalSpeciesEnum; 042import ca.uhn.fhir.model.dstu2.composite.AnnotationDt; 043import ca.uhn.fhir.model.dstu2.valueset.AnswerFormatEnum; 044import ca.uhn.fhir.model.dstu2.resource.Appointment; 045import ca.uhn.fhir.model.dstu2.valueset.AppointmentStatusEnum; 046import ca.uhn.fhir.model.dstu2.valueset.AssertionDirectionTypeEnum; 047import ca.uhn.fhir.model.dstu2.valueset.AssertionOperatorTypeEnum; 048import ca.uhn.fhir.model.dstu2.valueset.AssertionResponseTypesEnum; 049import ca.uhn.fhir.model.dstu2.composite.AttachmentDt; 050import ca.uhn.fhir.model.dstu2.valueset.AuditEventActionEnum; 051import ca.uhn.fhir.model.dstu2.valueset.AuditEventObjectLifecycleEnum; 052import ca.uhn.fhir.model.dstu2.valueset.AuditEventObjectRoleEnum; 053import ca.uhn.fhir.model.dstu2.valueset.AuditEventObjectTypeEnum; 054import ca.uhn.fhir.model.dstu2.valueset.AuditEventOutcomeEnum; 055import ca.uhn.fhir.model.dstu2.valueset.AuditEventParticipantNetworkTypeEnum; 056import ca.uhn.fhir.model.dstu2.valueset.AuditEventSourceTypeEnum; 057import ca.uhn.fhir.model.dstu2.valueset.BindingStrengthEnum; 058import ca.uhn.fhir.model.dstu2.resource.BodySite; 059import ca.uhn.fhir.model.dstu2.valueset.BundleTypeEnum; 060import ca.uhn.fhir.model.dstu2.resource.CarePlan; 061import ca.uhn.fhir.model.dstu2.valueset.CarePlanActivityCategoryEnum; 062import ca.uhn.fhir.model.dstu2.valueset.CarePlanActivityStatusEnum; 063import ca.uhn.fhir.model.dstu2.valueset.CarePlanRelationshipEnum; 064import ca.uhn.fhir.model.dstu2.valueset.CarePlanStatusEnum; 065import ca.uhn.fhir.model.dstu2.resource.Claim; 066import ca.uhn.fhir.model.dstu2.resource.ClaimResponse; 067import ca.uhn.fhir.model.dstu2.valueset.ClaimTypeEnum; 068import ca.uhn.fhir.model.dstu2.resource.ClinicalImpression; 069import ca.uhn.fhir.model.dstu2.valueset.ClinicalImpressionStatusEnum; 070import ca.uhn.fhir.model.dstu2.composite.CodeableConceptDt; 071import ca.uhn.fhir.model.dstu2.composite.CodingDt; 072import ca.uhn.fhir.model.dstu2.resource.CommunicationRequest; 073import ca.uhn.fhir.model.dstu2.valueset.CommunicationRequestStatusEnum; 074import ca.uhn.fhir.model.dstu2.valueset.CommunicationStatusEnum; 075import ca.uhn.fhir.model.dstu2.resource.Composition; 076import ca.uhn.fhir.model.dstu2.valueset.CompositionAttestationModeEnum; 077import ca.uhn.fhir.model.dstu2.valueset.CompositionStatusEnum; 078import ca.uhn.fhir.model.dstu2.valueset.ConceptMapEquivalenceEnum; 079import ca.uhn.fhir.model.dstu2.resource.Condition; 080import ca.uhn.fhir.model.dstu2.valueset.ConditionCategoryCodesEnum; 081import ca.uhn.fhir.model.dstu2.valueset.ConditionClinicalStatusCodesEnum; 082import ca.uhn.fhir.model.dstu2.valueset.ConditionVerificationStatusEnum; 083import ca.uhn.fhir.model.dstu2.valueset.ConditionalDeleteStatusEnum; 084import ca.uhn.fhir.model.dstu2.valueset.ConditionsCodesEnum; 085import ca.uhn.fhir.model.dstu2.resource.Conformance; 086import ca.uhn.fhir.model.dstu2.valueset.ConformanceEventModeEnum; 087import ca.uhn.fhir.model.dstu2.valueset.ConformanceResourceStatusEnum; 088import ca.uhn.fhir.model.dstu2.valueset.ConformanceStatementKindEnum; 089import ca.uhn.fhir.model.dstu2.composite.ContactPointDt; 090import ca.uhn.fhir.model.dstu2.valueset.ContentTypeEnum; 091import ca.uhn.fhir.model.dstu2.resource.Contract; 092import ca.uhn.fhir.model.dstu2.valueset.ContractActionCodesEnum; 093import ca.uhn.fhir.model.dstu2.valueset.ContractActorRoleCodesEnum; 094import ca.uhn.fhir.model.dstu2.valueset.ContractSubtypeCodesEnum; 095import ca.uhn.fhir.model.dstu2.valueset.ContractTermTypeCodesEnum; 096import ca.uhn.fhir.model.dstu2.valueset.ContractTypeCodesEnum; 097import ca.uhn.fhir.model.dstu2.resource.Coverage; 098import ca.uhn.fhir.model.dstu2.valueset.DataElementStringencyEnum; 099import ca.uhn.fhir.model.dstu2.valueset.DaysOfWeekEnum; 100import ca.uhn.fhir.model.dstu2.valueset.DetectedIssueSeverityEnum; 101import ca.uhn.fhir.model.dstu2.resource.Device; 102import ca.uhn.fhir.model.dstu2.resource.DeviceComponent; 103import ca.uhn.fhir.model.dstu2.resource.DeviceMetric; 104import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricCalibrationStateEnum; 105import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricCalibrationTypeEnum; 106import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricCategoryEnum; 107import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricColorEnum; 108import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricOperationalStatusEnum; 109import ca.uhn.fhir.model.dstu2.valueset.DeviceStatusEnum; 110import ca.uhn.fhir.model.dstu2.resource.DeviceUseRequest; 111import ca.uhn.fhir.model.dstu2.valueset.DeviceUseRequestPriorityEnum; 112import ca.uhn.fhir.model.dstu2.valueset.DeviceUseRequestStatusEnum; 113import ca.uhn.fhir.model.dstu2.resource.DiagnosticOrder; 114import ca.uhn.fhir.model.dstu2.valueset.DiagnosticOrderPriorityEnum; 115import ca.uhn.fhir.model.dstu2.valueset.DiagnosticOrderStatusEnum; 116import ca.uhn.fhir.model.dstu2.resource.DiagnosticReport; 117import ca.uhn.fhir.model.dstu2.valueset.DiagnosticReportStatusEnum; 118import ca.uhn.fhir.model.dstu2.valueset.DigitalMediaTypeEnum; 119import ca.uhn.fhir.model.dstu2.valueset.DocumentModeEnum; 120import ca.uhn.fhir.model.dstu2.resource.DocumentReference; 121import ca.uhn.fhir.model.dstu2.valueset.DocumentReferenceStatusEnum; 122import ca.uhn.fhir.model.dstu2.valueset.DocumentRelationshipTypeEnum; 123import ca.uhn.fhir.model.dstu2.composite.ElementDefinitionDt; 124import ca.uhn.fhir.model.dstu2.resource.EligibilityRequest; 125import ca.uhn.fhir.model.dstu2.resource.Encounter; 126import ca.uhn.fhir.model.dstu2.valueset.EncounterClassEnum; 127import ca.uhn.fhir.model.dstu2.valueset.EncounterLocationStatusEnum; 128import ca.uhn.fhir.model.dstu2.valueset.EncounterStateEnum; 129import ca.uhn.fhir.model.dstu2.valueset.EncounterTypeEnum; 130import ca.uhn.fhir.model.dstu2.resource.EnrollmentRequest; 131import ca.uhn.fhir.model.dstu2.valueset.EnteralFormulaTypeCodesEnum; 132import ca.uhn.fhir.model.dstu2.resource.EpisodeOfCare; 133import ca.uhn.fhir.model.dstu2.valueset.EpisodeOfCareStatusEnum; 134import ca.uhn.fhir.model.dstu2.valueset.ExceptionCodesEnum; 135import ca.uhn.fhir.model.dstu2.valueset.ExtensionContextEnum; 136import ca.uhn.fhir.model.dstu2.valueset.FamilyHistoryStatusEnum; 137import ca.uhn.fhir.model.dstu2.resource.FamilyMemberHistory; 138import ca.uhn.fhir.model.dstu2.valueset.FilterOperatorEnum; 139import ca.uhn.fhir.model.dstu2.valueset.FlagCategoryCodesEnum; 140import ca.uhn.fhir.model.dstu2.valueset.FlagStatusEnum; 141import ca.uhn.fhir.model.dstu2.valueset.FluidConsistencyTypeCodesEnum; 142import ca.uhn.fhir.model.dstu2.resource.Goal; 143import ca.uhn.fhir.model.dstu2.valueset.GoalCategoryEnum; 144import ca.uhn.fhir.model.dstu2.valueset.GoalPriorityEnum; 145import ca.uhn.fhir.model.dstu2.valueset.GoalStartEventEnum; 146import ca.uhn.fhir.model.dstu2.valueset.GoalStatusEnum; 147import ca.uhn.fhir.model.dstu2.valueset.GoalStatusReasonEnum; 148import ca.uhn.fhir.model.dstu2.resource.Group; 149import ca.uhn.fhir.model.dstu2.valueset.GroupTypeEnum; 150import ca.uhn.fhir.model.dstu2.valueset.GuideDependencyTypeEnum; 151import ca.uhn.fhir.model.dstu2.valueset.GuidePageKindEnum; 152import ca.uhn.fhir.model.dstu2.valueset.GuideResourcePurposeEnum; 153import ca.uhn.fhir.model.dstu2.valueset.HTTPVerbEnum; 154import ca.uhn.fhir.model.dstu2.resource.HealthcareService; 155import ca.uhn.fhir.model.dstu2.composite.HumanNameDt; 156import ca.uhn.fhir.model.dstu2.composite.IdentifierDt; 157import ca.uhn.fhir.model.dstu2.valueset.IdentifierTypeCodesEnum; 158import ca.uhn.fhir.model.dstu2.valueset.IdentityAssuranceLevelEnum; 159import ca.uhn.fhir.model.dstu2.resource.ImagingObjectSelection; 160import ca.uhn.fhir.model.dstu2.resource.ImagingStudy; 161import ca.uhn.fhir.model.dstu2.resource.Immunization; 162import ca.uhn.fhir.model.dstu2.valueset.ImmunizationReasonCodesEnum; 163import ca.uhn.fhir.model.dstu2.valueset.ImmunizationRecommendationDateCriterionCodesEnum; 164import ca.uhn.fhir.model.dstu2.valueset.ImmunizationRecommendationStatusCodesEnum; 165import ca.uhn.fhir.model.dstu2.valueset.ImmunizationRouteCodesEnum; 166import ca.uhn.fhir.model.dstu2.valueset.InstanceAvailabilityEnum; 167import ca.uhn.fhir.model.dstu2.valueset.InterventionCodesEnum; 168import ca.uhn.fhir.model.dstu2.valueset.IssueSeverityEnum; 169import ca.uhn.fhir.model.dstu2.valueset.IssueTypeEnum; 170import ca.uhn.fhir.model.dstu2.valueset.KOStitleEnum; 171import ca.uhn.fhir.model.dstu2.valueset.LateralityEnum; 172import ca.uhn.fhir.model.dstu2.valueset.LinkTypeEnum; 173import ca.uhn.fhir.model.dstu2.valueset.ListModeEnum; 174import ca.uhn.fhir.model.dstu2.valueset.ListOrderCodesEnum; 175import ca.uhn.fhir.model.dstu2.valueset.ListStatusEnum; 176import ca.uhn.fhir.model.dstu2.resource.Location; 177import ca.uhn.fhir.model.dstu2.valueset.LocationModeEnum; 178import ca.uhn.fhir.model.dstu2.valueset.LocationStatusEnum; 179import ca.uhn.fhir.model.dstu2.valueset.LocationTypeEnum; 180import ca.uhn.fhir.model.dstu2.valueset.MaritalStatusCodesEnum; 181import ca.uhn.fhir.model.dstu2.valueset.MeasmntPrincipleEnum; 182import ca.uhn.fhir.model.dstu2.resource.Media; 183import ca.uhn.fhir.model.dstu2.resource.Medication; 184import ca.uhn.fhir.model.dstu2.valueset.MedicationAdministrationStatusEnum; 185import ca.uhn.fhir.model.dstu2.valueset.MedicationDispenseStatusEnum; 186import ca.uhn.fhir.model.dstu2.resource.MedicationOrder; 187import ca.uhn.fhir.model.dstu2.valueset.MedicationOrderStatusEnum; 188import ca.uhn.fhir.model.dstu2.resource.MedicationStatement; 189import ca.uhn.fhir.model.dstu2.valueset.MedicationStatementStatusEnum; 190import ca.uhn.fhir.model.dstu2.valueset.MessageEventEnum; 191import ca.uhn.fhir.model.dstu2.valueset.MessageSignificanceCategoryEnum; 192import ca.uhn.fhir.model.dstu2.valueset.MessageTransportEnum; 193import ca.uhn.fhir.model.dstu2.resource.NamingSystem; 194import ca.uhn.fhir.model.dstu2.valueset.NamingSystemIdentifierTypeEnum; 195import ca.uhn.fhir.model.dstu2.valueset.NamingSystemTypeEnum; 196import ca.uhn.fhir.model.dstu2.valueset.NoteTypeEnum; 197import ca.uhn.fhir.model.dstu2.valueset.NutrientModifierCodesEnum; 198import ca.uhn.fhir.model.dstu2.resource.NutritionOrder; 199import ca.uhn.fhir.model.dstu2.valueset.NutritionOrderStatusEnum; 200import ca.uhn.fhir.model.dstu2.resource.Observation; 201import ca.uhn.fhir.model.dstu2.valueset.ObservationCategoryCodesEnum; 202import ca.uhn.fhir.model.dstu2.valueset.ObservationRelationshipTypeEnum; 203import ca.uhn.fhir.model.dstu2.valueset.ObservationStatusEnum; 204import ca.uhn.fhir.model.dstu2.resource.OperationDefinition; 205import ca.uhn.fhir.model.dstu2.valueset.OperationKindEnum; 206import ca.uhn.fhir.model.dstu2.resource.OperationOutcome; 207import ca.uhn.fhir.model.dstu2.valueset.OperationParameterUseEnum; 208import ca.uhn.fhir.model.dstu2.resource.Order; 209import ca.uhn.fhir.model.dstu2.valueset.OrderStatusEnum; 210import ca.uhn.fhir.model.dstu2.resource.Organization; 211import ca.uhn.fhir.model.dstu2.valueset.OrganizationTypeEnum; 212import ca.uhn.fhir.model.dstu2.valueset.ParticipantRequiredEnum; 213import ca.uhn.fhir.model.dstu2.valueset.ParticipantStatusEnum; 214import ca.uhn.fhir.model.dstu2.valueset.ParticipantTypeEnum; 215import ca.uhn.fhir.model.dstu2.valueset.ParticipationStatusEnum; 216import ca.uhn.fhir.model.dstu2.resource.Patient; 217import ca.uhn.fhir.model.dstu2.valueset.PayeeTypeCodesEnum; 218import ca.uhn.fhir.model.dstu2.valueset.PaymentStatusCodesEnum; 219import ca.uhn.fhir.model.dstu2.valueset.PaymentTypeCodesEnum; 220import ca.uhn.fhir.model.dstu2.composite.PeriodDt; 221import ca.uhn.fhir.model.dstu2.resource.Person; 222import ca.uhn.fhir.model.dstu2.resource.Practitioner; 223import ca.uhn.fhir.model.dstu2.valueset.PractitionerRoleEnum; 224import ca.uhn.fhir.model.dstu2.valueset.PractitionerSpecialtyEnum; 225import ca.uhn.fhir.model.dstu2.valueset.PriorityCodesEnum; 226import ca.uhn.fhir.model.dstu2.resource.Procedure; 227import ca.uhn.fhir.model.dstu2.resource.ProcedureRequest; 228import ca.uhn.fhir.model.dstu2.valueset.ProcedureRequestPriorityEnum; 229import ca.uhn.fhir.model.dstu2.valueset.ProcedureRequestStatusEnum; 230import ca.uhn.fhir.model.dstu2.valueset.ProcedureStatusEnum; 231import ca.uhn.fhir.model.dstu2.resource.ProcessRequest; 232import ca.uhn.fhir.model.dstu2.valueset.ProvenanceEntityRoleEnum; 233import ca.uhn.fhir.model.dstu2.composite.QuantityDt; 234import ca.uhn.fhir.model.dstu2.resource.Questionnaire; 235import ca.uhn.fhir.model.dstu2.resource.QuestionnaireResponse; 236import ca.uhn.fhir.model.dstu2.valueset.QuestionnaireResponseStatusEnum; 237import ca.uhn.fhir.model.dstu2.valueset.QuestionnaireStatusEnum; 238import ca.uhn.fhir.model.dstu2.composite.RangeDt; 239import ca.uhn.fhir.model.dstu2.composite.RatioDt; 240import ca.uhn.fhir.model.dstu2.valueset.ReferralMethodEnum; 241import ca.uhn.fhir.model.dstu2.resource.ReferralRequest; 242import ca.uhn.fhir.model.dstu2.valueset.ReferralStatusEnum; 243import ca.uhn.fhir.model.dstu2.resource.RelatedPerson; 244import ca.uhn.fhir.model.dstu2.valueset.RemittanceOutcomeEnum; 245import ca.uhn.fhir.model.dstu2.valueset.ResourceTypeEnum; 246import ca.uhn.fhir.model.dstu2.valueset.ResourceVersionPolicyEnum; 247import ca.uhn.fhir.model.dstu2.valueset.ResponseTypeEnum; 248import ca.uhn.fhir.model.dstu2.valueset.RestfulConformanceModeEnum; 249import ca.uhn.fhir.model.dstu2.valueset.RestfulSecurityServiceEnum; 250import ca.uhn.fhir.model.dstu2.resource.RiskAssessment; 251import ca.uhn.fhir.model.dstu2.valueset.RulesetCodesEnum; 252import ca.uhn.fhir.model.dstu2.composite.SampledDataDt; 253import ca.uhn.fhir.model.dstu2.resource.Schedule; 254import ca.uhn.fhir.model.dstu2.valueset.SearchEntryModeEnum; 255import ca.uhn.fhir.model.dstu2.valueset.SearchModifierCodeEnum; 256import ca.uhn.fhir.model.dstu2.valueset.SearchParamTypeEnum; 257import ca.uhn.fhir.model.dstu2.valueset.ServiceProvisionConditionsEnum; 258import ca.uhn.fhir.model.dstu2.composite.SignatureDt; 259import ca.uhn.fhir.model.dstu2.resource.Slot; 260import ca.uhn.fhir.model.dstu2.valueset.SlotStatusEnum; 261import ca.uhn.fhir.model.dstu2.resource.Specimen; 262import ca.uhn.fhir.model.dstu2.valueset.SpecimenCollectionMethodEnum; 263import ca.uhn.fhir.model.dstu2.valueset.SpecimenStatusEnum; 264import ca.uhn.fhir.model.dstu2.resource.StructureDefinition; 265import ca.uhn.fhir.model.dstu2.valueset.StructureDefinitionKindEnum; 266import ca.uhn.fhir.model.dstu2.valueset.SubscriptionChannelTypeEnum; 267import ca.uhn.fhir.model.dstu2.valueset.SubscriptionStatusEnum; 268import ca.uhn.fhir.model.dstu2.valueset.SubscriptionTagEnum; 269import ca.uhn.fhir.model.dstu2.resource.Substance; 270import ca.uhn.fhir.model.dstu2.valueset.SubstanceCategoryCodesEnum; 271import ca.uhn.fhir.model.dstu2.valueset.SupplementTypeCodesEnum; 272import ca.uhn.fhir.model.dstu2.valueset.SupplyDeliveryStatusEnum; 273import ca.uhn.fhir.model.dstu2.resource.SupplyRequest; 274import ca.uhn.fhir.model.dstu2.valueset.SupplyRequestReasonEnum; 275import ca.uhn.fhir.model.dstu2.valueset.SupplyRequestStatusEnum; 276import ca.uhn.fhir.model.dstu2.valueset.SurfaceCodesEnum; 277import ca.uhn.fhir.model.dstu2.valueset.SystemRestfulInteractionEnum; 278import ca.uhn.fhir.model.api.TemporalPrecisionEnum; 279import ca.uhn.fhir.model.dstu2.valueset.TextureModifiedFoodTypeCodesEnum; 280import ca.uhn.fhir.model.dstu2.valueset.TextureModifierCodesEnum; 281import ca.uhn.fhir.model.dstu2.composite.TimingDt; 282import ca.uhn.fhir.model.dstu2.valueset.TransactionModeEnum; 283import ca.uhn.fhir.model.dstu2.valueset.TypeRestfulInteractionEnum; 284import ca.uhn.fhir.model.dstu2.valueset.UDICodesEnum; 285import ca.uhn.fhir.model.dstu2.valueset.UnknownContentCodeEnum; 286import ca.uhn.fhir.model.dstu2.valueset.UseEnum; 287import ca.uhn.fhir.model.dstu2.resource.ValueSet; 288import ca.uhn.fhir.model.dstu2.valueset.VisionBaseEnum; 289import ca.uhn.fhir.model.dstu2.valueset.VisionEyesEnum; 290import ca.uhn.fhir.model.dstu2.resource.VisionPrescription; 291import ca.uhn.fhir.model.dstu2.valueset.XPathUsageTypeEnum; 292import ca.uhn.fhir.model.api.IResource; 293import ca.uhn.fhir.model.dstu2.composite.AgeDt; 294import ca.uhn.fhir.model.dstu2.composite.BoundCodeableConceptDt; 295import ca.uhn.fhir.model.dstu2.composite.DurationDt; 296import ca.uhn.fhir.model.dstu2.composite.MoneyDt; 297import ca.uhn.fhir.model.dstu2.composite.NarrativeDt; 298import ca.uhn.fhir.model.dstu2.composite.ResourceReferenceDt; 299import ca.uhn.fhir.model.dstu2.composite.SimpleQuantityDt; 300import ca.uhn.fhir.model.primitive.Base64BinaryDt; 301import ca.uhn.fhir.model.primitive.BooleanDt; 302import ca.uhn.fhir.model.primitive.BoundCodeDt; 303import ca.uhn.fhir.model.primitive.CodeDt; 304import ca.uhn.fhir.model.primitive.DateDt; 305import ca.uhn.fhir.model.primitive.DateTimeDt; 306import ca.uhn.fhir.model.primitive.DecimalDt; 307import ca.uhn.fhir.model.primitive.IdDt; 308import ca.uhn.fhir.model.primitive.InstantDt; 309import ca.uhn.fhir.model.primitive.IntegerDt; 310import ca.uhn.fhir.model.primitive.OidDt; 311import ca.uhn.fhir.model.primitive.PositiveIntDt; 312import ca.uhn.fhir.model.primitive.StringDt; 313import ca.uhn.fhir.model.primitive.TimeDt; 314import ca.uhn.fhir.model.primitive.UnsignedIntDt; 315import ca.uhn.fhir.model.primitive.UriDt; 316 317 318/** 319 * HAPI/FHIR <b>Bundle</b> Resource 320 * () 321 * 322 * <p> 323 * <b>Definition:</b> 324 * A container for a collection of resources. 325 * </p> 326 * 327 * <p> 328 * <b>Requirements:</b> 329 * 330 * </p> 331 * 332 * <p> 333 * <b>Profile Definition:</b> 334 * <a href="http://hl7.org/fhir/profiles/Bundle">http://hl7.org/fhir/profiles/Bundle</a> 335 * </p> 336 * 337 */ 338@ResourceDef(name="Bundle", profile="http://hl7.org/fhir/profiles/Bundle", id="bundle") 339public class Bundle extends ca.uhn.fhir.model.dstu2.resource.BaseResource 340 implements IResource , org.hl7.fhir.instance.model.api.IBaseBundle 341 { 342 343 /** 344 * Search parameter constant for <b>type</b> 345 * <p> 346 * Description: <b></b><br> 347 * Type: <b>token</b><br> 348 * Path: <b>Bundle.type</b><br> 349 * </p> 350 */ 351 @SearchParamDefinition(name="type", path="Bundle.type", description="", type="token" ) 352 public static final String SP_TYPE = "type"; 353 354 /** 355 * <b>Fluent Client</b> search parameter constant for <b>type</b> 356 * <p> 357 * Description: <b></b><br> 358 * Type: <b>token</b><br> 359 * Path: <b>Bundle.type</b><br> 360 * </p> 361 */ 362 public static final TokenClientParam TYPE = new TokenClientParam(SP_TYPE); 363 364 /** 365 * Search parameter constant for <b>message</b> 366 * <p> 367 * Description: <b>The first resource in the bundle, if the bundle type is \"message\" - this is a message header, and this parameter provides access to search its contents</b><br> 368 * Type: <b>reference</b><br> 369 * Path: <b>Bundle.entry.resource(0)</b><br> 370 * </p> 371 */ 372 @SearchParamDefinition(name="message", path="Bundle.entry.resource(0)", description="The first resource in the bundle, if the bundle type is \"message\" - this is a message header, and this parameter provides access to search its contents", type="reference" ) 373 public static final String SP_MESSAGE = "message"; 374 375 /** 376 * <b>Fluent Client</b> search parameter constant for <b>message</b> 377 * <p> 378 * Description: <b>The first resource in the bundle, if the bundle type is \"message\" - this is a message header, and this parameter provides access to search its contents</b><br> 379 * Type: <b>reference</b><br> 380 * Path: <b>Bundle.entry.resource(0)</b><br> 381 * </p> 382 */ 383 public static final ReferenceClientParam MESSAGE = new ReferenceClientParam(SP_MESSAGE); 384 385 /** 386 * Search parameter constant for <b>composition</b> 387 * <p> 388 * Description: <b>The first resource in the bundle, if the bundle type is \"document\" - this is a composition, and this parameter provides access to searches its contents</b><br> 389 * Type: <b>reference</b><br> 390 * Path: <b>Bundle.entry.resource(0)</b><br> 391 * </p> 392 */ 393 @SearchParamDefinition(name="composition", path="Bundle.entry.resource(0)", description="The first resource in the bundle, if the bundle type is \"document\" - this is a composition, and this parameter provides access to searches its contents", type="reference" ) 394 public static final String SP_COMPOSITION = "composition"; 395 396 /** 397 * <b>Fluent Client</b> search parameter constant for <b>composition</b> 398 * <p> 399 * Description: <b>The first resource in the bundle, if the bundle type is \"document\" - this is a composition, and this parameter provides access to searches its contents</b><br> 400 * Type: <b>reference</b><br> 401 * Path: <b>Bundle.entry.resource(0)</b><br> 402 * </p> 403 */ 404 public static final ReferenceClientParam COMPOSITION = new ReferenceClientParam(SP_COMPOSITION); 405 406 407 /** 408 * Constant for fluent queries to be used to add include statements. Specifies 409 * the path value of "<b>Bundle:composition</b>". 410 */ 411 public static final Include INCLUDE_COMPOSITION = new Include("Bundle:composition"); 412 413 /** 414 * Constant for fluent queries to be used to add include statements. Specifies 415 * the path value of "<b>Bundle:message</b>". 416 */ 417 public static final Include INCLUDE_MESSAGE = new Include("Bundle:message"); 418 419 420 @Child(name="type", type=CodeDt.class, order=0, min=1, max=1, summary=true, modifier=false) 421 @Description( 422 shortDefinition="", 423 formalDefinition="Indicates the purpose of this bundle- how it was intended to be used" 424 ) 425 private BoundCodeDt<BundleTypeEnum> myType; 426 427 @Child(name="total", type=UnsignedIntDt.class, order=1, min=0, max=1, summary=true, modifier=false) 428 @Description( 429 shortDefinition="", 430 formalDefinition="If a set of search matches, this is the total number of matches for the search (as opposed to the number of results in this bundle)" 431 ) 432 private UnsignedIntDt myTotal; 433 434 @Child(name="link", order=2, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 435 @Description( 436 shortDefinition="", 437 formalDefinition="A series of links that provide context to this bundle" 438 ) 439 private java.util.List<Link> myLink; 440 441 @Child(name="entry", order=3, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 442 @Description( 443 shortDefinition="", 444 formalDefinition="An entry in a bundle resource - will either contain a resource, or information about a resource (transactions and history only)" 445 ) 446 private java.util.List<Entry> myEntry; 447 448 @Child(name="signature", type=SignatureDt.class, order=4, min=0, max=1, summary=true, modifier=false) 449 @Description( 450 shortDefinition="", 451 formalDefinition="Digital Signature - base64 encoded. XML DigSIg or a JWT" 452 ) 453 private SignatureDt mySignature; 454 455 456 @Override 457 public boolean isEmpty() { 458 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myType, myTotal, myLink, myEntry, mySignature); 459 } 460 461 @Override 462 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 463 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myType, myTotal, myLink, myEntry, mySignature); 464 } 465 466 /** 467 * Gets the value(s) for <b>type</b> (). 468 * creating it if it does 469 * not exist. Will not return <code>null</code>. 470 * 471 * <p> 472 * <b>Definition:</b> 473 * Indicates the purpose of this bundle- how it was intended to be used 474 * </p> 475 */ 476 public BoundCodeDt<BundleTypeEnum> getTypeElement() { 477 if (myType == null) { 478 myType = new BoundCodeDt<BundleTypeEnum>(BundleTypeEnum.VALUESET_BINDER); 479 } 480 return myType; 481 } 482 483 484 /** 485 * Gets the value(s) for <b>type</b> (). 486 * creating it if it does 487 * not exist. Will not return <code>null</code>. 488 * 489 * <p> 490 * <b>Definition:</b> 491 * Indicates the purpose of this bundle- how it was intended to be used 492 * </p> 493 */ 494 public String getType() { 495 return getTypeElement().getValue(); 496 } 497 498 /** 499 * Sets the value(s) for <b>type</b> () 500 * 501 * <p> 502 * <b>Definition:</b> 503 * Indicates the purpose of this bundle- how it was intended to be used 504 * </p> 505 */ 506 public Bundle setType(BoundCodeDt<BundleTypeEnum> theValue) { 507 myType = theValue; 508 return this; 509 } 510 511 512 513 /** 514 * Sets the value(s) for <b>type</b> () 515 * 516 * <p> 517 * <b>Definition:</b> 518 * Indicates the purpose of this bundle- how it was intended to be used 519 * </p> 520 */ 521 public Bundle setType(BundleTypeEnum theValue) { 522 setType(new BoundCodeDt<BundleTypeEnum>(BundleTypeEnum.VALUESET_BINDER, theValue)); 523 524/* 525 getTypeElement().setValueAsEnum(theValue); 526*/ 527 return this; 528 } 529 530 531 /** 532 * Gets the value(s) for <b>total</b> (). 533 * creating it if it does 534 * not exist. Will not return <code>null</code>. 535 * 536 * <p> 537 * <b>Definition:</b> 538 * If a set of search matches, this is the total number of matches for the search (as opposed to the number of results in this bundle) 539 * </p> 540 */ 541 public UnsignedIntDt getTotalElement() { 542 if (myTotal == null) { 543 myTotal = new UnsignedIntDt(); 544 } 545 return myTotal; 546 } 547 548 549 /** 550 * Gets the value(s) for <b>total</b> (). 551 * creating it if it does 552 * not exist. Will not return <code>null</code>. 553 * 554 * <p> 555 * <b>Definition:</b> 556 * If a set of search matches, this is the total number of matches for the search (as opposed to the number of results in this bundle) 557 * </p> 558 */ 559 public Integer getTotal() { 560 return getTotalElement().getValue(); 561 } 562 563 /** 564 * Sets the value(s) for <b>total</b> () 565 * 566 * <p> 567 * <b>Definition:</b> 568 * If a set of search matches, this is the total number of matches for the search (as opposed to the number of results in this bundle) 569 * </p> 570 */ 571 public Bundle setTotal(UnsignedIntDt theValue) { 572 myTotal = theValue; 573 return this; 574 } 575 576 577 578 /** 579 * Sets the value for <b>total</b> () 580 * 581 * <p> 582 * <b>Definition:</b> 583 * If a set of search matches, this is the total number of matches for the search (as opposed to the number of results in this bundle) 584 * </p> 585 */ 586 public Bundle setTotal( int theInteger) { 587 myTotal = new UnsignedIntDt(theInteger); 588 return this; 589 } 590 591 592 /** 593 * Gets the value(s) for <b>link</b> (). 594 * creating it if it does 595 * not exist. Will not return <code>null</code>. 596 * 597 * <p> 598 * <b>Definition:</b> 599 * A series of links that provide context to this bundle 600 * </p> 601 */ 602 public java.util.List<Link> getLink() { 603 if (myLink == null) { 604 myLink = new java.util.ArrayList<Link>(); 605 } 606 return myLink; 607 } 608 609 /** 610 * Sets the value(s) for <b>link</b> () 611 * 612 * <p> 613 * <b>Definition:</b> 614 * A series of links that provide context to this bundle 615 * </p> 616 */ 617 public Bundle setLink(java.util.List<Link> theValue) { 618 myLink = theValue; 619 return this; 620 } 621 622 623 624 /** 625 * Adds and returns a new value for <b>link</b> () 626 * 627 * <p> 628 * <b>Definition:</b> 629 * A series of links that provide context to this bundle 630 * </p> 631 */ 632 public Link addLink() { 633 Link newType = new Link(); 634 getLink().add(newType); 635 return newType; 636 } 637 638 /** 639 * Adds a given new value for <b>link</b> () 640 * 641 * <p> 642 * <b>Definition:</b> 643 * A series of links that provide context to this bundle 644 * </p> 645 * @param theValue The link to add (must not be <code>null</code>) 646 */ 647 public Bundle addLink(Link theValue) { 648 if (theValue == null) { 649 throw new NullPointerException("theValue must not be null"); 650 } 651 getLink().add(theValue); 652 return this; 653 } 654 655 /** 656 * Gets the first repetition for <b>link</b> (), 657 * creating it if it does not already exist. 658 * 659 * <p> 660 * <b>Definition:</b> 661 * A series of links that provide context to this bundle 662 * </p> 663 */ 664 public Link getLinkFirstRep() { 665 if (getLink().isEmpty()) { 666 return addLink(); 667 } 668 return getLink().get(0); 669 } 670 671 /** 672 * Gets the value(s) for <b>entry</b> (). 673 * creating it if it does 674 * not exist. Will not return <code>null</code>. 675 * 676 * <p> 677 * <b>Definition:</b> 678 * An entry in a bundle resource - will either contain a resource, or information about a resource (transactions and history only) 679 * </p> 680 */ 681 public java.util.List<Entry> getEntry() { 682 if (myEntry == null) { 683 myEntry = new java.util.ArrayList<Entry>(); 684 } 685 return myEntry; 686 } 687 688 /** 689 * Sets the value(s) for <b>entry</b> () 690 * 691 * <p> 692 * <b>Definition:</b> 693 * An entry in a bundle resource - will either contain a resource, or information about a resource (transactions and history only) 694 * </p> 695 */ 696 public Bundle setEntry(java.util.List<Entry> theValue) { 697 myEntry = theValue; 698 return this; 699 } 700 701 702 703 /** 704 * Adds and returns a new value for <b>entry</b> () 705 * 706 * <p> 707 * <b>Definition:</b> 708 * An entry in a bundle resource - will either contain a resource, or information about a resource (transactions and history only) 709 * </p> 710 */ 711 public Entry addEntry() { 712 Entry newType = new Entry(); 713 getEntry().add(newType); 714 return newType; 715 } 716 717 /** 718 * Adds a given new value for <b>entry</b> () 719 * 720 * <p> 721 * <b>Definition:</b> 722 * An entry in a bundle resource - will either contain a resource, or information about a resource (transactions and history only) 723 * </p> 724 * @param theValue The entry to add (must not be <code>null</code>) 725 */ 726 public Bundle addEntry(Entry theValue) { 727 if (theValue == null) { 728 throw new NullPointerException("theValue must not be null"); 729 } 730 getEntry().add(theValue); 731 return this; 732 } 733 734 /** 735 * Gets the first repetition for <b>entry</b> (), 736 * creating it if it does not already exist. 737 * 738 * <p> 739 * <b>Definition:</b> 740 * An entry in a bundle resource - will either contain a resource, or information about a resource (transactions and history only) 741 * </p> 742 */ 743 public Entry getEntryFirstRep() { 744 if (getEntry().isEmpty()) { 745 return addEntry(); 746 } 747 return getEntry().get(0); 748 } 749 750 /** 751 * Gets the value(s) for <b>signature</b> (). 752 * creating it if it does 753 * not exist. Will not return <code>null</code>. 754 * 755 * <p> 756 * <b>Definition:</b> 757 * Digital Signature - base64 encoded. XML DigSIg or a JWT 758 * </p> 759 */ 760 public SignatureDt getSignature() { 761 if (mySignature == null) { 762 mySignature = new SignatureDt(); 763 } 764 return mySignature; 765 } 766 767 /** 768 * Sets the value(s) for <b>signature</b> () 769 * 770 * <p> 771 * <b>Definition:</b> 772 * Digital Signature - base64 encoded. XML DigSIg or a JWT 773 * </p> 774 */ 775 public Bundle setSignature(SignatureDt theValue) { 776 mySignature = theValue; 777 return this; 778 } 779 780 781 782 783 /** 784 * Block class for child element: <b>Bundle.link</b> () 785 * 786 * <p> 787 * <b>Definition:</b> 788 * A series of links that provide context to this bundle 789 * </p> 790 */ 791 @Block() 792 public static class Link 793 extends BaseIdentifiableElement implements IResourceBlock { 794 795 @Child(name="relation", type=StringDt.class, order=0, min=1, max=1, summary=true, modifier=false) 796 @Description( 797 shortDefinition="", 798 formalDefinition="A name which details the functional use for this link - see [[http://www.iana.org/assignments/link-relations/link-relations.xhtml]]" 799 ) 800 private StringDt myRelation; 801 802 @Child(name="url", type=UriDt.class, order=1, min=1, max=1, summary=true, modifier=false) 803 @Description( 804 shortDefinition="", 805 formalDefinition="The reference details for the link" 806 ) 807 private UriDt myUrl; 808 809 810 @Override 811 public boolean isEmpty() { 812 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myRelation, myUrl); 813 } 814 815 @Override 816 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 817 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myRelation, myUrl); 818 } 819 820 /** 821 * Gets the value(s) for <b>relation</b> (). 822 * creating it if it does 823 * not exist. Will not return <code>null</code>. 824 * 825 * <p> 826 * <b>Definition:</b> 827 * A name which details the functional use for this link - see [[http://www.iana.org/assignments/link-relations/link-relations.xhtml]] 828 * </p> 829 */ 830 public StringDt getRelationElement() { 831 if (myRelation == null) { 832 myRelation = new StringDt(); 833 } 834 return myRelation; 835 } 836 837 838 /** 839 * Gets the value(s) for <b>relation</b> (). 840 * creating it if it does 841 * not exist. Will not return <code>null</code>. 842 * 843 * <p> 844 * <b>Definition:</b> 845 * A name which details the functional use for this link - see [[http://www.iana.org/assignments/link-relations/link-relations.xhtml]] 846 * </p> 847 */ 848 public String getRelation() { 849 return getRelationElement().getValue(); 850 } 851 852 /** 853 * Sets the value(s) for <b>relation</b> () 854 * 855 * <p> 856 * <b>Definition:</b> 857 * A name which details the functional use for this link - see [[http://www.iana.org/assignments/link-relations/link-relations.xhtml]] 858 * </p> 859 */ 860 public Link setRelation(StringDt theValue) { 861 myRelation = theValue; 862 return this; 863 } 864 865 866 867 /** 868 * Sets the value for <b>relation</b> () 869 * 870 * <p> 871 * <b>Definition:</b> 872 * A name which details the functional use for this link - see [[http://www.iana.org/assignments/link-relations/link-relations.xhtml]] 873 * </p> 874 */ 875 public Link setRelation( String theString) { 876 myRelation = new StringDt(theString); 877 return this; 878 } 879 880 881 /** 882 * Gets the value(s) for <b>url</b> (). 883 * creating it if it does 884 * not exist. Will not return <code>null</code>. 885 * 886 * <p> 887 * <b>Definition:</b> 888 * The reference details for the link 889 * </p> 890 */ 891 public UriDt getUrlElement() { 892 if (myUrl == null) { 893 myUrl = new UriDt(); 894 } 895 return myUrl; 896 } 897 898 899 /** 900 * Gets the value(s) for <b>url</b> (). 901 * creating it if it does 902 * not exist. Will not return <code>null</code>. 903 * 904 * <p> 905 * <b>Definition:</b> 906 * The reference details for the link 907 * </p> 908 */ 909 public String getUrl() { 910 return getUrlElement().getValue(); 911 } 912 913 /** 914 * Sets the value(s) for <b>url</b> () 915 * 916 * <p> 917 * <b>Definition:</b> 918 * The reference details for the link 919 * </p> 920 */ 921 public Link setUrl(UriDt theValue) { 922 myUrl = theValue; 923 return this; 924 } 925 926 927 928 /** 929 * Sets the value for <b>url</b> () 930 * 931 * <p> 932 * <b>Definition:</b> 933 * The reference details for the link 934 * </p> 935 */ 936 public Link setUrl( String theUri) { 937 myUrl = new UriDt(theUri); 938 return this; 939 } 940 941 942 943 944 } 945 946 947 /** 948 * Block class for child element: <b>Bundle.entry</b> () 949 * 950 * <p> 951 * <b>Definition:</b> 952 * An entry in a bundle resource - will either contain a resource, or information about a resource (transactions and history only) 953 * </p> 954 */ 955 @Block() 956 public static class Entry 957 extends BaseIdentifiableElement implements IResourceBlock { 958 959 @Child(name="link", type=Link.class, order=0, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 960 @Description( 961 shortDefinition="", 962 formalDefinition="A series of links that provide context to this entry" 963 ) 964 private java.util.List<Link> myLink; 965 966 @Child(name="fullUrl", type=UriDt.class, order=1, min=0, max=1, summary=true, modifier=false) 967 @Description( 968 shortDefinition="", 969 formalDefinition="The Absolute URL for the resource. This must be provided for all resources. The fullUrl SHALL not disagree with the id in the resource. The fullUrl is a version independent reference to the resource" 970 ) 971 private UriDt myFullUrl; 972 973 @Child(name="resource", type=IResource.class, order=2, min=0, max=1, summary=true, modifier=false) 974 @Description( 975 shortDefinition="", 976 formalDefinition="The Resources for the entry" 977 ) 978 private IResource myResource; 979 980 @Child(name="search", order=3, min=0, max=1, summary=true, modifier=false) 981 @Description( 982 shortDefinition="", 983 formalDefinition="Information about the search process that lead to the creation of this entry" 984 ) 985 private EntrySearch mySearch; 986 987 @Child(name="request", order=4, min=0, max=1, summary=true, modifier=false) 988 @Description( 989 shortDefinition="", 990 formalDefinition="Additional information about how this entry should be processed as part of a transaction" 991 ) 992 private EntryRequest myRequest; 993 994 @Child(name="response", order=5, min=0, max=1, summary=true, modifier=false) 995 @Description( 996 shortDefinition="", 997 formalDefinition="Additional information about how this entry should be processed as part of a transaction" 998 ) 999 private EntryResponse myResponse; 1000 1001 1002 @Override 1003 public boolean isEmpty() { 1004 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myLink, myFullUrl, myResource, mySearch, myRequest, myResponse); 1005 } 1006 1007 @Override 1008 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 1009 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myLink, myFullUrl, myResource, mySearch, myRequest, myResponse); 1010 } 1011 1012 /** 1013 * Gets the value(s) for <b>link</b> (). 1014 * creating it if it does 1015 * not exist. Will not return <code>null</code>. 1016 * 1017 * <p> 1018 * <b>Definition:</b> 1019 * A series of links that provide context to this entry 1020 * </p> 1021 */ 1022 public java.util.List<Link> getLink() { 1023 if (myLink == null) { 1024 myLink = new java.util.ArrayList<Link>(); 1025 } 1026 return myLink; 1027 } 1028 1029 /** 1030 * Sets the value(s) for <b>link</b> () 1031 * 1032 * <p> 1033 * <b>Definition:</b> 1034 * A series of links that provide context to this entry 1035 * </p> 1036 */ 1037 public Entry setLink(java.util.List<Link> theValue) { 1038 myLink = theValue; 1039 return this; 1040 } 1041 1042 1043 1044 /** 1045 * Adds and returns a new value for <b>link</b> () 1046 * 1047 * <p> 1048 * <b>Definition:</b> 1049 * A series of links that provide context to this entry 1050 * </p> 1051 */ 1052 public Link addLink() { 1053 Link newType = new Link(); 1054 getLink().add(newType); 1055 return newType; 1056 } 1057 1058 /** 1059 * Adds a given new value for <b>link</b> () 1060 * 1061 * <p> 1062 * <b>Definition:</b> 1063 * A series of links that provide context to this entry 1064 * </p> 1065 * @param theValue The link to add (must not be <code>null</code>) 1066 */ 1067 public Entry addLink(Link theValue) { 1068 if (theValue == null) { 1069 throw new NullPointerException("theValue must not be null"); 1070 } 1071 getLink().add(theValue); 1072 return this; 1073 } 1074 1075 /** 1076 * Gets the first repetition for <b>link</b> (), 1077 * creating it if it does not already exist. 1078 * 1079 * <p> 1080 * <b>Definition:</b> 1081 * A series of links that provide context to this entry 1082 * </p> 1083 */ 1084 public Link getLinkFirstRep() { 1085 if (getLink().isEmpty()) { 1086 return addLink(); 1087 } 1088 return getLink().get(0); 1089 } 1090 1091 /** 1092 * Gets the value(s) for <b>fullUrl</b> (). 1093 * creating it if it does 1094 * not exist. Will not return <code>null</code>. 1095 * 1096 * <p> 1097 * <b>Definition:</b> 1098 * The Absolute URL for the resource. This must be provided for all resources. The fullUrl SHALL not disagree with the id in the resource. The fullUrl is a version independent reference to the resource 1099 * </p> 1100 */ 1101 public UriDt getFullUrlElement() { 1102 if (myFullUrl == null) { 1103 myFullUrl = new UriDt(); 1104 } 1105 return myFullUrl; 1106 } 1107 1108 1109 /** 1110 * Gets the value(s) for <b>fullUrl</b> (). 1111 * creating it if it does 1112 * not exist. Will not return <code>null</code>. 1113 * 1114 * <p> 1115 * <b>Definition:</b> 1116 * The Absolute URL for the resource. This must be provided for all resources. The fullUrl SHALL not disagree with the id in the resource. The fullUrl is a version independent reference to the resource 1117 * </p> 1118 */ 1119 public String getFullUrl() { 1120 return getFullUrlElement().getValue(); 1121 } 1122 1123 /** 1124 * Sets the value(s) for <b>fullUrl</b> () 1125 * 1126 * <p> 1127 * <b>Definition:</b> 1128 * The Absolute URL for the resource. This must be provided for all resources. The fullUrl SHALL not disagree with the id in the resource. The fullUrl is a version independent reference to the resource 1129 * </p> 1130 */ 1131 public Entry setFullUrl(UriDt theValue) { 1132 myFullUrl = theValue; 1133 return this; 1134 } 1135 1136 1137 1138 /** 1139 * Sets the value for <b>fullUrl</b> () 1140 * 1141 * <p> 1142 * <b>Definition:</b> 1143 * The Absolute URL for the resource. This must be provided for all resources. The fullUrl SHALL not disagree with the id in the resource. The fullUrl is a version independent reference to the resource 1144 * </p> 1145 */ 1146 public Entry setFullUrl( String theUri) { 1147 myFullUrl = new UriDt(theUri); 1148 return this; 1149 } 1150 1151 1152 /** 1153 * Gets the value(s) for <b>resource</b> (). 1154 * 1155 * <p> 1156 * <b>Definition:</b> 1157 * The Resources for the entry 1158 * </p> 1159 */ 1160 public IResource getResource() { 1161 return myResource; 1162 } 1163 1164 1165 /** 1166 * Sets the value(s) for <b>resource</b> () 1167 * 1168 * <p> 1169 * <b>Definition:</b> 1170 * The Resources for the entry 1171 * </p> 1172 */ 1173 public Entry setResource(IResource theValue) { 1174 myResource = theValue; 1175 return this; 1176 } 1177 1178 1179 1180 1181 /** 1182 * Gets the value(s) for <b>search</b> (). 1183 * creating it if it does 1184 * not exist. Will not return <code>null</code>. 1185 * 1186 * <p> 1187 * <b>Definition:</b> 1188 * Information about the search process that lead to the creation of this entry 1189 * </p> 1190 */ 1191 public EntrySearch getSearch() { 1192 if (mySearch == null) { 1193 mySearch = new EntrySearch(); 1194 } 1195 return mySearch; 1196 } 1197 1198 /** 1199 * Sets the value(s) for <b>search</b> () 1200 * 1201 * <p> 1202 * <b>Definition:</b> 1203 * Information about the search process that lead to the creation of this entry 1204 * </p> 1205 */ 1206 public Entry setSearch(EntrySearch theValue) { 1207 mySearch = theValue; 1208 return this; 1209 } 1210 1211 1212 1213 1214 /** 1215 * Gets the value(s) for <b>request</b> (). 1216 * creating it if it does 1217 * not exist. Will not return <code>null</code>. 1218 * 1219 * <p> 1220 * <b>Definition:</b> 1221 * Additional information about how this entry should be processed as part of a transaction 1222 * </p> 1223 */ 1224 public EntryRequest getRequest() { 1225 if (myRequest == null) { 1226 myRequest = new EntryRequest(); 1227 } 1228 return myRequest; 1229 } 1230 1231 /** 1232 * Sets the value(s) for <b>request</b> () 1233 * 1234 * <p> 1235 * <b>Definition:</b> 1236 * Additional information about how this entry should be processed as part of a transaction 1237 * </p> 1238 */ 1239 public Entry setRequest(EntryRequest theValue) { 1240 myRequest = theValue; 1241 return this; 1242 } 1243 1244 1245 1246 1247 /** 1248 * Gets the value(s) for <b>response</b> (). 1249 * creating it if it does 1250 * not exist. Will not return <code>null</code>. 1251 * 1252 * <p> 1253 * <b>Definition:</b> 1254 * Additional information about how this entry should be processed as part of a transaction 1255 * </p> 1256 */ 1257 public EntryResponse getResponse() { 1258 if (myResponse == null) { 1259 myResponse = new EntryResponse(); 1260 } 1261 return myResponse; 1262 } 1263 1264 /** 1265 * Sets the value(s) for <b>response</b> () 1266 * 1267 * <p> 1268 * <b>Definition:</b> 1269 * Additional information about how this entry should be processed as part of a transaction 1270 * </p> 1271 */ 1272 public Entry setResponse(EntryResponse theValue) { 1273 myResponse = theValue; 1274 return this; 1275 } 1276 1277 1278 1279 1280 1281 1282 } 1283 1284 /** 1285 * Block class for child element: <b>Bundle.entry.search</b> () 1286 * 1287 * <p> 1288 * <b>Definition:</b> 1289 * Information about the search process that lead to the creation of this entry 1290 * </p> 1291 */ 1292 @Block() 1293 public static class EntrySearch 1294 extends BaseIdentifiableElement implements IResourceBlock { 1295 1296 @Child(name="mode", type=CodeDt.class, order=0, min=0, max=1, summary=true, modifier=false) 1297 @Description( 1298 shortDefinition="", 1299 formalDefinition="Why this entry is in the result set - whether it's included as a match or because of an _include requirement" 1300 ) 1301 private BoundCodeDt<SearchEntryModeEnum> myMode; 1302 1303 @Child(name="score", type=DecimalDt.class, order=1, min=0, max=1, summary=true, modifier=false) 1304 @Description( 1305 shortDefinition="", 1306 formalDefinition="When searching, the server's search ranking score for the entry" 1307 ) 1308 private DecimalDt myScore; 1309 1310 1311 @Override 1312 public boolean isEmpty() { 1313 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myMode, myScore); 1314 } 1315 1316 @Override 1317 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 1318 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myMode, myScore); 1319 } 1320 1321 /** 1322 * Gets the value(s) for <b>mode</b> (). 1323 * creating it if it does 1324 * not exist. Will not return <code>null</code>. 1325 * 1326 * <p> 1327 * <b>Definition:</b> 1328 * Why this entry is in the result set - whether it's included as a match or because of an _include requirement 1329 * </p> 1330 */ 1331 public BoundCodeDt<SearchEntryModeEnum> getModeElement() { 1332 if (myMode == null) { 1333 myMode = new BoundCodeDt<SearchEntryModeEnum>(SearchEntryModeEnum.VALUESET_BINDER); 1334 } 1335 return myMode; 1336 } 1337 1338 1339 /** 1340 * Gets the value(s) for <b>mode</b> (). 1341 * creating it if it does 1342 * not exist. Will not return <code>null</code>. 1343 * 1344 * <p> 1345 * <b>Definition:</b> 1346 * Why this entry is in the result set - whether it's included as a match or because of an _include requirement 1347 * </p> 1348 */ 1349 public String getMode() { 1350 return getModeElement().getValue(); 1351 } 1352 1353 /** 1354 * Sets the value(s) for <b>mode</b> () 1355 * 1356 * <p> 1357 * <b>Definition:</b> 1358 * Why this entry is in the result set - whether it's included as a match or because of an _include requirement 1359 * </p> 1360 */ 1361 public EntrySearch setMode(BoundCodeDt<SearchEntryModeEnum> theValue) { 1362 myMode = theValue; 1363 return this; 1364 } 1365 1366 1367 1368 /** 1369 * Sets the value(s) for <b>mode</b> () 1370 * 1371 * <p> 1372 * <b>Definition:</b> 1373 * Why this entry is in the result set - whether it's included as a match or because of an _include requirement 1374 * </p> 1375 */ 1376 public EntrySearch setMode(SearchEntryModeEnum theValue) { 1377 setMode(new BoundCodeDt<SearchEntryModeEnum>(SearchEntryModeEnum.VALUESET_BINDER, theValue)); 1378 1379/* 1380 getModeElement().setValueAsEnum(theValue); 1381*/ 1382 return this; 1383 } 1384 1385 1386 /** 1387 * Gets the value(s) for <b>score</b> (). 1388 * creating it if it does 1389 * not exist. Will not return <code>null</code>. 1390 * 1391 * <p> 1392 * <b>Definition:</b> 1393 * When searching, the server's search ranking score for the entry 1394 * </p> 1395 */ 1396 public DecimalDt getScoreElement() { 1397 if (myScore == null) { 1398 myScore = new DecimalDt(); 1399 } 1400 return myScore; 1401 } 1402 1403 1404 /** 1405 * Gets the value(s) for <b>score</b> (). 1406 * creating it if it does 1407 * not exist. Will not return <code>null</code>. 1408 * 1409 * <p> 1410 * <b>Definition:</b> 1411 * When searching, the server's search ranking score for the entry 1412 * </p> 1413 */ 1414 public BigDecimal getScore() { 1415 return getScoreElement().getValue(); 1416 } 1417 1418 /** 1419 * Sets the value(s) for <b>score</b> () 1420 * 1421 * <p> 1422 * <b>Definition:</b> 1423 * When searching, the server's search ranking score for the entry 1424 * </p> 1425 */ 1426 public EntrySearch setScore(DecimalDt theValue) { 1427 myScore = theValue; 1428 return this; 1429 } 1430 1431 1432 1433 /** 1434 * Sets the value for <b>score</b> () 1435 * 1436 * <p> 1437 * <b>Definition:</b> 1438 * When searching, the server's search ranking score for the entry 1439 * </p> 1440 */ 1441 public EntrySearch setScore( long theValue) { 1442 myScore = new DecimalDt(theValue); 1443 return this; 1444 } 1445 1446 /** 1447 * Sets the value for <b>score</b> () 1448 * 1449 * <p> 1450 * <b>Definition:</b> 1451 * When searching, the server's search ranking score for the entry 1452 * </p> 1453 */ 1454 public EntrySearch setScore( double theValue) { 1455 myScore = new DecimalDt(theValue); 1456 return this; 1457 } 1458 1459 /** 1460 * Sets the value for <b>score</b> () 1461 * 1462 * <p> 1463 * <b>Definition:</b> 1464 * When searching, the server's search ranking score for the entry 1465 * </p> 1466 */ 1467 public EntrySearch setScore( java.math.BigDecimal theValue) { 1468 myScore = new DecimalDt(theValue); 1469 return this; 1470 } 1471 1472 1473 1474 1475 } 1476 1477 1478 /** 1479 * Block class for child element: <b>Bundle.entry.request</b> () 1480 * 1481 * <p> 1482 * <b>Definition:</b> 1483 * Additional information about how this entry should be processed as part of a transaction 1484 * </p> 1485 */ 1486 @Block() 1487 public static class EntryRequest 1488 extends BaseIdentifiableElement implements IResourceBlock { 1489 1490 @Child(name="method", type=CodeDt.class, order=0, min=1, max=1, summary=true, modifier=false) 1491 @Description( 1492 shortDefinition="", 1493 formalDefinition="The HTTP verb for this entry in either a update history, or a transaction/ transaction response" 1494 ) 1495 private BoundCodeDt<HTTPVerbEnum> myMethod; 1496 1497 @Child(name="url", type=UriDt.class, order=1, min=1, max=1, summary=true, modifier=false) 1498 @Description( 1499 shortDefinition="", 1500 formalDefinition="The URL for this entry, relative to the root (the address to which the request is posted)" 1501 ) 1502 private UriDt myUrl; 1503 1504 @Child(name="ifNoneMatch", type=StringDt.class, order=2, min=0, max=1, summary=true, modifier=false) 1505 @Description( 1506 shortDefinition="", 1507 formalDefinition="If the ETag values match, return a 304 Not modified status. See the API documentation for [\"Conditional Read\"](http.html#cread)" 1508 ) 1509 private StringDt myIfNoneMatch; 1510 1511 @Child(name="ifModifiedSince", type=InstantDt.class, order=3, min=0, max=1, summary=true, modifier=false) 1512 @Description( 1513 shortDefinition="", 1514 formalDefinition="Only perform the operation if the last updated date matches. See the API documentation for [\"Conditional Read\"](http.html#cread)" 1515 ) 1516 private InstantDt myIfModifiedSince; 1517 1518 @Child(name="ifMatch", type=StringDt.class, order=4, min=0, max=1, summary=true, modifier=false) 1519 @Description( 1520 shortDefinition="", 1521 formalDefinition="Only perform the operation if the Etag value matches. For more information, see the API section [\"Managing Resource Contention\"](http.html#concurrency)" 1522 ) 1523 private StringDt myIfMatch; 1524 1525 @Child(name="ifNoneExist", type=StringDt.class, order=5, min=0, max=1, summary=true, modifier=false) 1526 @Description( 1527 shortDefinition="", 1528 formalDefinition="Instruct the server not to perform the create if a specified resource already exists. For further information, see the API documentation for [\"Conditional Create\"](http.html#ccreate). This is just the query portion of the URL - what follows the \"?\" (not including the \"?\")" 1529 ) 1530 private StringDt myIfNoneExist; 1531 1532 1533 @Override 1534 public boolean isEmpty() { 1535 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myMethod, myUrl, myIfNoneMatch, myIfModifiedSince, myIfMatch, myIfNoneExist); 1536 } 1537 1538 @Override 1539 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 1540 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myMethod, myUrl, myIfNoneMatch, myIfModifiedSince, myIfMatch, myIfNoneExist); 1541 } 1542 1543 /** 1544 * Gets the value(s) for <b>method</b> (). 1545 * creating it if it does 1546 * not exist. Will not return <code>null</code>. 1547 * 1548 * <p> 1549 * <b>Definition:</b> 1550 * The HTTP verb for this entry in either a update history, or a transaction/ transaction response 1551 * </p> 1552 */ 1553 public BoundCodeDt<HTTPVerbEnum> getMethodElement() { 1554 if (myMethod == null) { 1555 myMethod = new BoundCodeDt<HTTPVerbEnum>(HTTPVerbEnum.VALUESET_BINDER); 1556 } 1557 return myMethod; 1558 } 1559 1560 1561 /** 1562 * Gets the value(s) for <b>method</b> (). 1563 * creating it if it does 1564 * not exist. Will not return <code>null</code>. 1565 * 1566 * <p> 1567 * <b>Definition:</b> 1568 * The HTTP verb for this entry in either a update history, or a transaction/ transaction response 1569 * </p> 1570 */ 1571 public String getMethod() { 1572 return getMethodElement().getValue(); 1573 } 1574 1575 /** 1576 * Sets the value(s) for <b>method</b> () 1577 * 1578 * <p> 1579 * <b>Definition:</b> 1580 * The HTTP verb for this entry in either a update history, or a transaction/ transaction response 1581 * </p> 1582 */ 1583 public EntryRequest setMethod(BoundCodeDt<HTTPVerbEnum> theValue) { 1584 myMethod = theValue; 1585 return this; 1586 } 1587 1588 1589 1590 /** 1591 * Sets the value(s) for <b>method</b> () 1592 * 1593 * <p> 1594 * <b>Definition:</b> 1595 * The HTTP verb for this entry in either a update history, or a transaction/ transaction response 1596 * </p> 1597 */ 1598 public EntryRequest setMethod(HTTPVerbEnum theValue) { 1599 setMethod(new BoundCodeDt<HTTPVerbEnum>(HTTPVerbEnum.VALUESET_BINDER, theValue)); 1600 1601/* 1602 getMethodElement().setValueAsEnum(theValue); 1603*/ 1604 return this; 1605 } 1606 1607 1608 /** 1609 * Gets the value(s) for <b>url</b> (). 1610 * creating it if it does 1611 * not exist. Will not return <code>null</code>. 1612 * 1613 * <p> 1614 * <b>Definition:</b> 1615 * The URL for this entry, relative to the root (the address to which the request is posted) 1616 * </p> 1617 */ 1618 public UriDt getUrlElement() { 1619 if (myUrl == null) { 1620 myUrl = new UriDt(); 1621 } 1622 return myUrl; 1623 } 1624 1625 1626 /** 1627 * Gets the value(s) for <b>url</b> (). 1628 * creating it if it does 1629 * not exist. Will not return <code>null</code>. 1630 * 1631 * <p> 1632 * <b>Definition:</b> 1633 * The URL for this entry, relative to the root (the address to which the request is posted) 1634 * </p> 1635 */ 1636 public String getUrl() { 1637 return getUrlElement().getValue(); 1638 } 1639 1640 /** 1641 * Sets the value(s) for <b>url</b> () 1642 * 1643 * <p> 1644 * <b>Definition:</b> 1645 * The URL for this entry, relative to the root (the address to which the request is posted) 1646 * </p> 1647 */ 1648 public EntryRequest setUrl(UriDt theValue) { 1649 myUrl = theValue; 1650 return this; 1651 } 1652 1653 1654 1655 /** 1656 * Sets the value for <b>url</b> () 1657 * 1658 * <p> 1659 * <b>Definition:</b> 1660 * The URL for this entry, relative to the root (the address to which the request is posted) 1661 * </p> 1662 */ 1663 public EntryRequest setUrl( String theUri) { 1664 myUrl = new UriDt(theUri); 1665 return this; 1666 } 1667 1668 1669 /** 1670 * Gets the value(s) for <b>ifNoneMatch</b> (). 1671 * creating it if it does 1672 * not exist. Will not return <code>null</code>. 1673 * 1674 * <p> 1675 * <b>Definition:</b> 1676 * If the ETag values match, return a 304 Not modified status. See the API documentation for [\"Conditional Read\"](http.html#cread) 1677 * </p> 1678 */ 1679 public StringDt getIfNoneMatchElement() { 1680 if (myIfNoneMatch == null) { 1681 myIfNoneMatch = new StringDt(); 1682 } 1683 return myIfNoneMatch; 1684 } 1685 1686 1687 /** 1688 * Gets the value(s) for <b>ifNoneMatch</b> (). 1689 * creating it if it does 1690 * not exist. Will not return <code>null</code>. 1691 * 1692 * <p> 1693 * <b>Definition:</b> 1694 * If the ETag values match, return a 304 Not modified status. See the API documentation for [\"Conditional Read\"](http.html#cread) 1695 * </p> 1696 */ 1697 public String getIfNoneMatch() { 1698 return getIfNoneMatchElement().getValue(); 1699 } 1700 1701 /** 1702 * Sets the value(s) for <b>ifNoneMatch</b> () 1703 * 1704 * <p> 1705 * <b>Definition:</b> 1706 * If the ETag values match, return a 304 Not modified status. See the API documentation for [\"Conditional Read\"](http.html#cread) 1707 * </p> 1708 */ 1709 public EntryRequest setIfNoneMatch(StringDt theValue) { 1710 myIfNoneMatch = theValue; 1711 return this; 1712 } 1713 1714 1715 1716 /** 1717 * Sets the value for <b>ifNoneMatch</b> () 1718 * 1719 * <p> 1720 * <b>Definition:</b> 1721 * If the ETag values match, return a 304 Not modified status. See the API documentation for [\"Conditional Read\"](http.html#cread) 1722 * </p> 1723 */ 1724 public EntryRequest setIfNoneMatch( String theString) { 1725 myIfNoneMatch = new StringDt(theString); 1726 return this; 1727 } 1728 1729 1730 /** 1731 * Gets the value(s) for <b>ifModifiedSince</b> (). 1732 * creating it if it does 1733 * not exist. Will not return <code>null</code>. 1734 * 1735 * <p> 1736 * <b>Definition:</b> 1737 * Only perform the operation if the last updated date matches. See the API documentation for [\"Conditional Read\"](http.html#cread) 1738 * </p> 1739 */ 1740 public InstantDt getIfModifiedSinceElement() { 1741 if (myIfModifiedSince == null) { 1742 myIfModifiedSince = new InstantDt(); 1743 } 1744 return myIfModifiedSince; 1745 } 1746 1747 1748 /** 1749 * Gets the value(s) for <b>ifModifiedSince</b> (). 1750 * creating it if it does 1751 * not exist. Will not return <code>null</code>. 1752 * 1753 * <p> 1754 * <b>Definition:</b> 1755 * Only perform the operation if the last updated date matches. See the API documentation for [\"Conditional Read\"](http.html#cread) 1756 * </p> 1757 */ 1758 public Date getIfModifiedSince() { 1759 return getIfModifiedSinceElement().getValue(); 1760 } 1761 1762 /** 1763 * Sets the value(s) for <b>ifModifiedSince</b> () 1764 * 1765 * <p> 1766 * <b>Definition:</b> 1767 * Only perform the operation if the last updated date matches. See the API documentation for [\"Conditional Read\"](http.html#cread) 1768 * </p> 1769 */ 1770 public EntryRequest setIfModifiedSince(InstantDt theValue) { 1771 myIfModifiedSince = theValue; 1772 return this; 1773 } 1774 1775 1776 1777 /** 1778 * Sets the value for <b>ifModifiedSince</b> () 1779 * 1780 * <p> 1781 * <b>Definition:</b> 1782 * Only perform the operation if the last updated date matches. See the API documentation for [\"Conditional Read\"](http.html#cread) 1783 * </p> 1784 */ 1785 public EntryRequest setIfModifiedSinceWithMillisPrecision( Date theDate) { 1786 myIfModifiedSince = new InstantDt(theDate); 1787 return this; 1788 } 1789 1790 /** 1791 * Sets the value for <b>ifModifiedSince</b> () 1792 * 1793 * <p> 1794 * <b>Definition:</b> 1795 * Only perform the operation if the last updated date matches. See the API documentation for [\"Conditional Read\"](http.html#cread) 1796 * </p> 1797 */ 1798 public EntryRequest setIfModifiedSince( Date theDate, TemporalPrecisionEnum thePrecision) { 1799 myIfModifiedSince = new InstantDt(theDate, thePrecision); 1800 return this; 1801 } 1802 1803 1804 /** 1805 * Gets the value(s) for <b>ifMatch</b> (). 1806 * creating it if it does 1807 * not exist. Will not return <code>null</code>. 1808 * 1809 * <p> 1810 * <b>Definition:</b> 1811 * Only perform the operation if the Etag value matches. For more information, see the API section [\"Managing Resource Contention\"](http.html#concurrency) 1812 * </p> 1813 */ 1814 public StringDt getIfMatchElement() { 1815 if (myIfMatch == null) { 1816 myIfMatch = new StringDt(); 1817 } 1818 return myIfMatch; 1819 } 1820 1821 1822 /** 1823 * Gets the value(s) for <b>ifMatch</b> (). 1824 * creating it if it does 1825 * not exist. Will not return <code>null</code>. 1826 * 1827 * <p> 1828 * <b>Definition:</b> 1829 * Only perform the operation if the Etag value matches. For more information, see the API section [\"Managing Resource Contention\"](http.html#concurrency) 1830 * </p> 1831 */ 1832 public String getIfMatch() { 1833 return getIfMatchElement().getValue(); 1834 } 1835 1836 /** 1837 * Sets the value(s) for <b>ifMatch</b> () 1838 * 1839 * <p> 1840 * <b>Definition:</b> 1841 * Only perform the operation if the Etag value matches. For more information, see the API section [\"Managing Resource Contention\"](http.html#concurrency) 1842 * </p> 1843 */ 1844 public EntryRequest setIfMatch(StringDt theValue) { 1845 myIfMatch = theValue; 1846 return this; 1847 } 1848 1849 1850 1851 /** 1852 * Sets the value for <b>ifMatch</b> () 1853 * 1854 * <p> 1855 * <b>Definition:</b> 1856 * Only perform the operation if the Etag value matches. For more information, see the API section [\"Managing Resource Contention\"](http.html#concurrency) 1857 * </p> 1858 */ 1859 public EntryRequest setIfMatch( String theString) { 1860 myIfMatch = new StringDt(theString); 1861 return this; 1862 } 1863 1864 1865 /** 1866 * Gets the value(s) for <b>ifNoneExist</b> (). 1867 * creating it if it does 1868 * not exist. Will not return <code>null</code>. 1869 * 1870 * <p> 1871 * <b>Definition:</b> 1872 * Instruct the server not to perform the create if a specified resource already exists. For further information, see the API documentation for [\"Conditional Create\"](http.html#ccreate). This is just the query portion of the URL - what follows the \"?\" (not including the \"?\") 1873 * </p> 1874 */ 1875 public StringDt getIfNoneExistElement() { 1876 if (myIfNoneExist == null) { 1877 myIfNoneExist = new StringDt(); 1878 } 1879 return myIfNoneExist; 1880 } 1881 1882 1883 /** 1884 * Gets the value(s) for <b>ifNoneExist</b> (). 1885 * creating it if it does 1886 * not exist. Will not return <code>null</code>. 1887 * 1888 * <p> 1889 * <b>Definition:</b> 1890 * Instruct the server not to perform the create if a specified resource already exists. For further information, see the API documentation for [\"Conditional Create\"](http.html#ccreate). This is just the query portion of the URL - what follows the \"?\" (not including the \"?\") 1891 * </p> 1892 */ 1893 public String getIfNoneExist() { 1894 return getIfNoneExistElement().getValue(); 1895 } 1896 1897 /** 1898 * Sets the value(s) for <b>ifNoneExist</b> () 1899 * 1900 * <p> 1901 * <b>Definition:</b> 1902 * Instruct the server not to perform the create if a specified resource already exists. For further information, see the API documentation for [\"Conditional Create\"](http.html#ccreate). This is just the query portion of the URL - what follows the \"?\" (not including the \"?\") 1903 * </p> 1904 */ 1905 public EntryRequest setIfNoneExist(StringDt theValue) { 1906 myIfNoneExist = theValue; 1907 return this; 1908 } 1909 1910 1911 1912 /** 1913 * Sets the value for <b>ifNoneExist</b> () 1914 * 1915 * <p> 1916 * <b>Definition:</b> 1917 * Instruct the server not to perform the create if a specified resource already exists. For further information, see the API documentation for [\"Conditional Create\"](http.html#ccreate). This is just the query portion of the URL - what follows the \"?\" (not including the \"?\") 1918 * </p> 1919 */ 1920 public EntryRequest setIfNoneExist( String theString) { 1921 myIfNoneExist = new StringDt(theString); 1922 return this; 1923 } 1924 1925 1926 1927 1928 } 1929 1930 1931 /** 1932 * Block class for child element: <b>Bundle.entry.response</b> () 1933 * 1934 * <p> 1935 * <b>Definition:</b> 1936 * Additional information about how this entry should be processed as part of a transaction 1937 * </p> 1938 */ 1939 @Block() 1940 public static class EntryResponse 1941 extends BaseIdentifiableElement implements IResourceBlock { 1942 1943 @Child(name="status", type=StringDt.class, order=0, min=1, max=1, summary=true, modifier=false) 1944 @Description( 1945 shortDefinition="", 1946 formalDefinition="The status code returned by processing this entry" 1947 ) 1948 private StringDt myStatus; 1949 1950 @Child(name="location", type=UriDt.class, order=1, min=0, max=1, summary=true, modifier=false) 1951 @Description( 1952 shortDefinition="", 1953 formalDefinition="The location header created by processing this operation" 1954 ) 1955 private UriDt myLocation; 1956 1957 @Child(name="etag", type=StringDt.class, order=2, min=0, max=1, summary=true, modifier=false) 1958 @Description( 1959 shortDefinition="", 1960 formalDefinition="The etag for the resource, it the operation for the entry produced a versioned resource" 1961 ) 1962 private StringDt myEtag; 1963 1964 @Child(name="lastModified", type=InstantDt.class, order=3, min=0, max=1, summary=true, modifier=false) 1965 @Description( 1966 shortDefinition="", 1967 formalDefinition="The date/time that the resource was modified on the server" 1968 ) 1969 private InstantDt myLastModified; 1970 1971 1972 @Override 1973 public boolean isEmpty() { 1974 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myStatus, myLocation, myEtag, myLastModified); 1975 } 1976 1977 @Override 1978 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 1979 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myStatus, myLocation, myEtag, myLastModified); 1980 } 1981 1982 /** 1983 * Gets the value(s) for <b>status</b> (). 1984 * creating it if it does 1985 * not exist. Will not return <code>null</code>. 1986 * 1987 * <p> 1988 * <b>Definition:</b> 1989 * The status code returned by processing this entry 1990 * </p> 1991 */ 1992 public StringDt getStatusElement() { 1993 if (myStatus == null) { 1994 myStatus = new StringDt(); 1995 } 1996 return myStatus; 1997 } 1998 1999 2000 /** 2001 * Gets the value(s) for <b>status</b> (). 2002 * creating it if it does 2003 * not exist. Will not return <code>null</code>. 2004 * 2005 * <p> 2006 * <b>Definition:</b> 2007 * The status code returned by processing this entry 2008 * </p> 2009 */ 2010 public String getStatus() { 2011 return getStatusElement().getValue(); 2012 } 2013 2014 /** 2015 * Sets the value(s) for <b>status</b> () 2016 * 2017 * <p> 2018 * <b>Definition:</b> 2019 * The status code returned by processing this entry 2020 * </p> 2021 */ 2022 public EntryResponse setStatus(StringDt theValue) { 2023 myStatus = theValue; 2024 return this; 2025 } 2026 2027 2028 2029 /** 2030 * Sets the value for <b>status</b> () 2031 * 2032 * <p> 2033 * <b>Definition:</b> 2034 * The status code returned by processing this entry 2035 * </p> 2036 */ 2037 public EntryResponse setStatus( String theString) { 2038 myStatus = new StringDt(theString); 2039 return this; 2040 } 2041 2042 2043 /** 2044 * Gets the value(s) for <b>location</b> (). 2045 * creating it if it does 2046 * not exist. Will not return <code>null</code>. 2047 * 2048 * <p> 2049 * <b>Definition:</b> 2050 * The location header created by processing this operation 2051 * </p> 2052 */ 2053 public UriDt getLocationElement() { 2054 if (myLocation == null) { 2055 myLocation = new UriDt(); 2056 } 2057 return myLocation; 2058 } 2059 2060 2061 /** 2062 * Gets the value(s) for <b>location</b> (). 2063 * creating it if it does 2064 * not exist. Will not return <code>null</code>. 2065 * 2066 * <p> 2067 * <b>Definition:</b> 2068 * The location header created by processing this operation 2069 * </p> 2070 */ 2071 public String getLocation() { 2072 return getLocationElement().getValue(); 2073 } 2074 2075 /** 2076 * Sets the value(s) for <b>location</b> () 2077 * 2078 * <p> 2079 * <b>Definition:</b> 2080 * The location header created by processing this operation 2081 * </p> 2082 */ 2083 public EntryResponse setLocation(UriDt theValue) { 2084 myLocation = theValue; 2085 return this; 2086 } 2087 2088 2089 2090 /** 2091 * Sets the value for <b>location</b> () 2092 * 2093 * <p> 2094 * <b>Definition:</b> 2095 * The location header created by processing this operation 2096 * </p> 2097 */ 2098 public EntryResponse setLocation( String theUri) { 2099 myLocation = new UriDt(theUri); 2100 return this; 2101 } 2102 2103 2104 /** 2105 * Gets the value(s) for <b>etag</b> (). 2106 * creating it if it does 2107 * not exist. Will not return <code>null</code>. 2108 * 2109 * <p> 2110 * <b>Definition:</b> 2111 * The etag for the resource, it the operation for the entry produced a versioned resource 2112 * </p> 2113 */ 2114 public StringDt getEtagElement() { 2115 if (myEtag == null) { 2116 myEtag = new StringDt(); 2117 } 2118 return myEtag; 2119 } 2120 2121 2122 /** 2123 * Gets the value(s) for <b>etag</b> (). 2124 * creating it if it does 2125 * not exist. Will not return <code>null</code>. 2126 * 2127 * <p> 2128 * <b>Definition:</b> 2129 * The etag for the resource, it the operation for the entry produced a versioned resource 2130 * </p> 2131 */ 2132 public String getEtag() { 2133 return getEtagElement().getValue(); 2134 } 2135 2136 /** 2137 * Sets the value(s) for <b>etag</b> () 2138 * 2139 * <p> 2140 * <b>Definition:</b> 2141 * The etag for the resource, it the operation for the entry produced a versioned resource 2142 * </p> 2143 */ 2144 public EntryResponse setEtag(StringDt theValue) { 2145 myEtag = theValue; 2146 return this; 2147 } 2148 2149 2150 2151 /** 2152 * Sets the value for <b>etag</b> () 2153 * 2154 * <p> 2155 * <b>Definition:</b> 2156 * The etag for the resource, it the operation for the entry produced a versioned resource 2157 * </p> 2158 */ 2159 public EntryResponse setEtag( String theString) { 2160 myEtag = new StringDt(theString); 2161 return this; 2162 } 2163 2164 2165 /** 2166 * Gets the value(s) for <b>lastModified</b> (). 2167 * creating it if it does 2168 * not exist. Will not return <code>null</code>. 2169 * 2170 * <p> 2171 * <b>Definition:</b> 2172 * The date/time that the resource was modified on the server 2173 * </p> 2174 */ 2175 public InstantDt getLastModifiedElement() { 2176 if (myLastModified == null) { 2177 myLastModified = new InstantDt(); 2178 } 2179 return myLastModified; 2180 } 2181 2182 2183 /** 2184 * Gets the value(s) for <b>lastModified</b> (). 2185 * creating it if it does 2186 * not exist. Will not return <code>null</code>. 2187 * 2188 * <p> 2189 * <b>Definition:</b> 2190 * The date/time that the resource was modified on the server 2191 * </p> 2192 */ 2193 public Date getLastModified() { 2194 return getLastModifiedElement().getValue(); 2195 } 2196 2197 /** 2198 * Sets the value(s) for <b>lastModified</b> () 2199 * 2200 * <p> 2201 * <b>Definition:</b> 2202 * The date/time that the resource was modified on the server 2203 * </p> 2204 */ 2205 public EntryResponse setLastModified(InstantDt theValue) { 2206 myLastModified = theValue; 2207 return this; 2208 } 2209 2210 2211 2212 /** 2213 * Sets the value for <b>lastModified</b> () 2214 * 2215 * <p> 2216 * <b>Definition:</b> 2217 * The date/time that the resource was modified on the server 2218 * </p> 2219 */ 2220 public EntryResponse setLastModifiedWithMillisPrecision( Date theDate) { 2221 myLastModified = new InstantDt(theDate); 2222 return this; 2223 } 2224 2225 /** 2226 * Sets the value for <b>lastModified</b> () 2227 * 2228 * <p> 2229 * <b>Definition:</b> 2230 * The date/time that the resource was modified on the server 2231 * </p> 2232 */ 2233 public EntryResponse setLastModified( Date theDate, TemporalPrecisionEnum thePrecision) { 2234 myLastModified = new InstantDt(theDate, thePrecision); 2235 return this; 2236 } 2237 2238 2239 2240 2241 } 2242 2243 2244 2245 2246 2247 @Override 2248 public String getResourceName() { 2249 return "Bundle"; 2250 } 2251 2252 public ca.uhn.fhir.context.FhirVersionEnum getStructureFhirVersionEnum() { 2253 return ca.uhn.fhir.context.FhirVersionEnum.DSTU2; 2254 } 2255 2256 /** 2257 * Returns the {@link #getLink() link} which matches a given {@link Link#getRelation() relation}. 2258 * If no link is found which matches the given relation, returns <code>null</code>. If more than one 2259 * link is found which matches the given relation, returns the first matching Link. 2260 * 2261 * @param theRelation 2262 * The relation, such as "next", or "self. See the constants such as {@link IBaseBundle#LINK_SELF} and {@link IBaseBundle#LINK_NEXT}. 2263 * @return Returns a matching Link, or <code>null</code> 2264 * @see IBaseBundle#LINK_NEXT 2265 * @see IBaseBundle#LINK_PREV 2266 * @see IBaseBundle#LINK_SELF 2267 */ 2268 public Link getLink(String theRelation) { 2269 org.apache.commons.lang3.Validate.notBlank(theRelation, "theRelation may not be null or empty"); 2270 for (Link next : getLink()) { 2271 if (theRelation.equals(next.getRelation())) { 2272 return next; 2273 } 2274 } 2275 return null; 2276 } 2277 2278 /** 2279 * Returns the {@link #getLink() link} which matches a given {@link Link#getRelation() relation}. 2280 * If no link is found which matches the given relation, creates a new Link with the 2281 * given relation and adds it to this Bundle. If more than one 2282 * link is found which matches the given relation, returns the first matching Link. 2283 * 2284 * @param theRelation 2285 * The relation, such as "next", or "self. See the constants such as {@link IBaseBundle#LINK_SELF} and {@link IBaseBundle#LINK_NEXT}. 2286 * @return Returns a matching Link, or <code>null</code> 2287 * @see IBaseBundle#LINK_NEXT 2288 * @see IBaseBundle#LINK_PREV 2289 * @see IBaseBundle#LINK_SELF 2290 */ 2291 public Link getLinkOrCreate(String theRelation) { 2292 org.apache.commons.lang3.Validate.notBlank(theRelation, "theRelation may not be null or empty"); 2293 for (Link next : getLink()) { 2294 if (theRelation.equals(next.getRelation())) { 2295 return next; 2296 } 2297 } 2298 Link retVal = new Link(); 2299 retVal.setRelation(theRelation); 2300 getLink().add(retVal); 2301 return retVal; 2302 } 2303 2304}