001package org.hl7.fhir.r4.model; 002 003/*- 004 * #%L 005 * org.hl7.fhir.r4 006 * %% 007 * Copyright (C) 2014 - 2019 Health Level 7 008 * %% 009 * Licensed under the Apache License, Version 2.0 (the "License"); 010 * you may not use this file except in compliance with the License. 011 * You may obtain a copy of the License at 012 * 013 * http://www.apache.org/licenses/LICENSE-2.0 014 * 015 * Unless required by applicable law or agreed to in writing, software 016 * distributed under the License is distributed on an "AS IS" BASIS, 017 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 018 * See the License for the specific language governing permissions and 019 * limitations under the License. 020 * #L% 021 */ 022 023/* 024 Copyright (c) 2011+, HL7, Inc. 025 All rights reserved. 026 027 Redistribution and use in source and binary forms, with or without modification, 028 are permitted provided that the following conditions are met: 029 030 * Redistributions of source code must retain the above copyright notice, this 031 list of conditions and the following disclaimer. 032 * Redistributions in binary form must reproduce the above copyright notice, 033 this list of conditions and the following disclaimer in the documentation 034 and/or other materials provided with the distribution. 035 * Neither the name of HL7 nor the names of its contributors may be used to 036 endorse or promote products derived from this software without specific 037 prior written permission. 038 039 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 040 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 041 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 042 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 043 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 044 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 045 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 046 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 047 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 048 POSSIBILITY OF SUCH DAMAGE. 049 050*/ 051 052// Generated on Thu, Dec 13, 2018 14:07+1100 for FHIR v4.0.0 053import java.util.ArrayList; 054import java.util.List; 055 056import org.hl7.fhir.exceptions.FHIRException; 057import org.hl7.fhir.utilities.Utilities; 058 059import ca.uhn.fhir.model.api.annotation.Child; 060import ca.uhn.fhir.model.api.annotation.Description; 061import ca.uhn.fhir.model.api.annotation.ResourceDef; 062import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 063/** 064 * The technical details of an endpoint that can be used for electronic services, such as for web services providing XDS.b or a REST endpoint for another FHIR server. This may include any security context information. 065 */ 066@ResourceDef(name="Endpoint", profile="http://hl7.org/fhir/StructureDefinition/Endpoint") 067public class Endpoint extends DomainResource { 068 069 public enum EndpointStatus { 070 /** 071 * This endpoint is expected to be active and can be used. 072 */ 073 ACTIVE, 074 /** 075 * This endpoint is temporarily unavailable. 076 */ 077 SUSPENDED, 078 /** 079 * This endpoint has exceeded connectivity thresholds and is considered in an error state and should no longer be attempted to connect to until corrective action is taken. 080 */ 081 ERROR, 082 /** 083 * This endpoint is no longer to be used. 084 */ 085 OFF, 086 /** 087 * This instance should not have been part of this patient's medical record. 088 */ 089 ENTEREDINERROR, 090 /** 091 * This endpoint is not intended for production usage. 092 */ 093 TEST, 094 /** 095 * added to help the parsers with the generic types 096 */ 097 NULL; 098 public static EndpointStatus fromCode(String codeString) throws FHIRException { 099 if (codeString == null || "".equals(codeString)) 100 return null; 101 if ("active".equals(codeString)) 102 return ACTIVE; 103 if ("suspended".equals(codeString)) 104 return SUSPENDED; 105 if ("error".equals(codeString)) 106 return ERROR; 107 if ("off".equals(codeString)) 108 return OFF; 109 if ("entered-in-error".equals(codeString)) 110 return ENTEREDINERROR; 111 if ("test".equals(codeString)) 112 return TEST; 113 if (Configuration.isAcceptInvalidEnums()) 114 return null; 115 else 116 throw new FHIRException("Unknown EndpointStatus code '"+codeString+"'"); 117 } 118 public String toCode() { 119 switch (this) { 120 case ACTIVE: return "active"; 121 case SUSPENDED: return "suspended"; 122 case ERROR: return "error"; 123 case OFF: return "off"; 124 case ENTEREDINERROR: return "entered-in-error"; 125 case TEST: return "test"; 126 default: return "?"; 127 } 128 } 129 public String getSystem() { 130 switch (this) { 131 case ACTIVE: return "http://hl7.org/fhir/endpoint-status"; 132 case SUSPENDED: return "http://hl7.org/fhir/endpoint-status"; 133 case ERROR: return "http://hl7.org/fhir/endpoint-status"; 134 case OFF: return "http://hl7.org/fhir/endpoint-status"; 135 case ENTEREDINERROR: return "http://hl7.org/fhir/endpoint-status"; 136 case TEST: return "http://hl7.org/fhir/endpoint-status"; 137 default: return "?"; 138 } 139 } 140 public String getDefinition() { 141 switch (this) { 142 case ACTIVE: return "This endpoint is expected to be active and can be used."; 143 case SUSPENDED: return "This endpoint is temporarily unavailable."; 144 case ERROR: return "This endpoint has exceeded connectivity thresholds and is considered in an error state and should no longer be attempted to connect to until corrective action is taken."; 145 case OFF: return "This endpoint is no longer to be used."; 146 case ENTEREDINERROR: return "This instance should not have been part of this patient's medical record."; 147 case TEST: return "This endpoint is not intended for production usage."; 148 default: return "?"; 149 } 150 } 151 public String getDisplay() { 152 switch (this) { 153 case ACTIVE: return "Active"; 154 case SUSPENDED: return "Suspended"; 155 case ERROR: return "Error"; 156 case OFF: return "Off"; 157 case ENTEREDINERROR: return "Entered in error"; 158 case TEST: return "Test"; 159 default: return "?"; 160 } 161 } 162 } 163 164 public static class EndpointStatusEnumFactory implements EnumFactory<EndpointStatus> { 165 public EndpointStatus fromCode(String codeString) throws IllegalArgumentException { 166 if (codeString == null || "".equals(codeString)) 167 if (codeString == null || "".equals(codeString)) 168 return null; 169 if ("active".equals(codeString)) 170 return EndpointStatus.ACTIVE; 171 if ("suspended".equals(codeString)) 172 return EndpointStatus.SUSPENDED; 173 if ("error".equals(codeString)) 174 return EndpointStatus.ERROR; 175 if ("off".equals(codeString)) 176 return EndpointStatus.OFF; 177 if ("entered-in-error".equals(codeString)) 178 return EndpointStatus.ENTEREDINERROR; 179 if ("test".equals(codeString)) 180 return EndpointStatus.TEST; 181 throw new IllegalArgumentException("Unknown EndpointStatus code '"+codeString+"'"); 182 } 183 public Enumeration<EndpointStatus> fromType(Base code) throws FHIRException { 184 if (code == null) 185 return null; 186 if (code.isEmpty()) 187 return new Enumeration<EndpointStatus>(this); 188 String codeString = ((PrimitiveType) code).asStringValue(); 189 if (codeString == null || "".equals(codeString)) 190 return null; 191 if ("active".equals(codeString)) 192 return new Enumeration<EndpointStatus>(this, EndpointStatus.ACTIVE); 193 if ("suspended".equals(codeString)) 194 return new Enumeration<EndpointStatus>(this, EndpointStatus.SUSPENDED); 195 if ("error".equals(codeString)) 196 return new Enumeration<EndpointStatus>(this, EndpointStatus.ERROR); 197 if ("off".equals(codeString)) 198 return new Enumeration<EndpointStatus>(this, EndpointStatus.OFF); 199 if ("entered-in-error".equals(codeString)) 200 return new Enumeration<EndpointStatus>(this, EndpointStatus.ENTEREDINERROR); 201 if ("test".equals(codeString)) 202 return new Enumeration<EndpointStatus>(this, EndpointStatus.TEST); 203 throw new FHIRException("Unknown EndpointStatus code '"+codeString+"'"); 204 } 205 public String toCode(EndpointStatus code) { 206 if (code == EndpointStatus.ACTIVE) 207 return "active"; 208 if (code == EndpointStatus.SUSPENDED) 209 return "suspended"; 210 if (code == EndpointStatus.ERROR) 211 return "error"; 212 if (code == EndpointStatus.OFF) 213 return "off"; 214 if (code == EndpointStatus.ENTEREDINERROR) 215 return "entered-in-error"; 216 if (code == EndpointStatus.TEST) 217 return "test"; 218 return "?"; 219 } 220 public String toSystem(EndpointStatus code) { 221 return code.getSystem(); 222 } 223 } 224 225 /** 226 * Identifier for the organization that is used to identify the endpoint across multiple disparate systems. 227 */ 228 @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 229 @Description(shortDefinition="Identifies this endpoint across multiple systems", formalDefinition="Identifier for the organization that is used to identify the endpoint across multiple disparate systems." ) 230 protected List<Identifier> identifier; 231 232 /** 233 * active | suspended | error | off | test. 234 */ 235 @Child(name = "status", type = {CodeType.class}, order=1, min=1, max=1, modifier=true, summary=true) 236 @Description(shortDefinition="active | suspended | error | off | entered-in-error | test", formalDefinition="active | suspended | error | off | test." ) 237 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/endpoint-status") 238 protected Enumeration<EndpointStatus> status; 239 240 /** 241 * A coded value that represents the technical details of the usage of this endpoint, such as what WSDLs should be used in what way. (e.g. XDS.b/DICOM/cds-hook). 242 */ 243 @Child(name = "connectionType", type = {Coding.class}, order=2, min=1, max=1, modifier=false, summary=true) 244 @Description(shortDefinition="Protocol/Profile/Standard to be used with this endpoint connection", formalDefinition="A coded value that represents the technical details of the usage of this endpoint, such as what WSDLs should be used in what way. (e.g. XDS.b/DICOM/cds-hook)." ) 245 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/endpoint-connection-type") 246 protected Coding connectionType; 247 248 /** 249 * A friendly name that this endpoint can be referred to with. 250 */ 251 @Child(name = "name", type = {StringType.class}, order=3, min=0, max=1, modifier=false, summary=true) 252 @Description(shortDefinition="A name that this endpoint can be identified by", formalDefinition="A friendly name that this endpoint can be referred to with." ) 253 protected StringType name; 254 255 /** 256 * The organization that manages this endpoint (even if technically another organization is hosting this in the cloud, it is the organization associated with the data). 257 */ 258 @Child(name = "managingOrganization", type = {Organization.class}, order=4, min=0, max=1, modifier=false, summary=true) 259 @Description(shortDefinition="Organization that manages this endpoint (might not be the organization that exposes the endpoint)", formalDefinition="The organization that manages this endpoint (even if technically another organization is hosting this in the cloud, it is the organization associated with the data)." ) 260 protected Reference managingOrganization; 261 262 /** 263 * The actual object that is the target of the reference (The organization that manages this endpoint (even if technically another organization is hosting this in the cloud, it is the organization associated with the data).) 264 */ 265 protected Organization managingOrganizationTarget; 266 267 /** 268 * Contact details for a human to contact about the subscription. The primary use of this for system administrator troubleshooting. 269 */ 270 @Child(name = "contact", type = {ContactPoint.class}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 271 @Description(shortDefinition="Contact details for source (e.g. troubleshooting)", formalDefinition="Contact details for a human to contact about the subscription. The primary use of this for system administrator troubleshooting." ) 272 protected List<ContactPoint> contact; 273 274 /** 275 * The interval during which the endpoint is expected to be operational. 276 */ 277 @Child(name = "period", type = {Period.class}, order=6, min=0, max=1, modifier=false, summary=true) 278 @Description(shortDefinition="Interval the endpoint is expected to be operational", formalDefinition="The interval during which the endpoint is expected to be operational." ) 279 protected Period period; 280 281 /** 282 * The payload type describes the acceptable content that can be communicated on the endpoint. 283 */ 284 @Child(name = "payloadType", type = {CodeableConcept.class}, order=7, min=1, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 285 @Description(shortDefinition="The type of content that may be used at this endpoint (e.g. XDS Discharge summaries)", formalDefinition="The payload type describes the acceptable content that can be communicated on the endpoint." ) 286 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/endpoint-payload-type") 287 protected List<CodeableConcept> payloadType; 288 289 /** 290 * The mime type to send the payload in - e.g. application/fhir+xml, application/fhir+json. If the mime type is not specified, then the sender could send any content (including no content depending on the connectionType). 291 */ 292 @Child(name = "payloadMimeType", type = {CodeType.class}, order=8, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 293 @Description(shortDefinition="Mimetype to send. If not specified, the content could be anything (including no payload, if the connectionType defined this)", formalDefinition="The mime type to send the payload in - e.g. application/fhir+xml, application/fhir+json. If the mime type is not specified, then the sender could send any content (including no content depending on the connectionType)." ) 294 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/mimetypes") 295 protected List<CodeType> payloadMimeType; 296 297 /** 298 * The uri that describes the actual end-point to connect to. 299 */ 300 @Child(name = "address", type = {UrlType.class}, order=9, min=1, max=1, modifier=false, summary=true) 301 @Description(shortDefinition="The technical base address for connecting to this endpoint", formalDefinition="The uri that describes the actual end-point to connect to." ) 302 protected UrlType address; 303 304 /** 305 * Additional headers / information to send as part of the notification. 306 */ 307 @Child(name = "header", type = {StringType.class}, order=10, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 308 @Description(shortDefinition="Usage depends on the channel type", formalDefinition="Additional headers / information to send as part of the notification." ) 309 protected List<StringType> header; 310 311 private static final long serialVersionUID = 755181080L; 312 313 /** 314 * Constructor 315 */ 316 public Endpoint() { 317 super(); 318 } 319 320 /** 321 * Constructor 322 */ 323 public Endpoint(Enumeration<EndpointStatus> status, Coding connectionType, UrlType address) { 324 super(); 325 this.status = status; 326 this.connectionType = connectionType; 327 this.address = address; 328 } 329 330 /** 331 * @return {@link #identifier} (Identifier for the organization that is used to identify the endpoint across multiple disparate systems.) 332 */ 333 public List<Identifier> getIdentifier() { 334 if (this.identifier == null) 335 this.identifier = new ArrayList<Identifier>(); 336 return this.identifier; 337 } 338 339 /** 340 * @return Returns a reference to <code>this</code> for easy method chaining 341 */ 342 public Endpoint setIdentifier(List<Identifier> theIdentifier) { 343 this.identifier = theIdentifier; 344 return this; 345 } 346 347 public boolean hasIdentifier() { 348 if (this.identifier == null) 349 return false; 350 for (Identifier item : this.identifier) 351 if (!item.isEmpty()) 352 return true; 353 return false; 354 } 355 356 public Identifier addIdentifier() { //3 357 Identifier t = new Identifier(); 358 if (this.identifier == null) 359 this.identifier = new ArrayList<Identifier>(); 360 this.identifier.add(t); 361 return t; 362 } 363 364 public Endpoint addIdentifier(Identifier t) { //3 365 if (t == null) 366 return this; 367 if (this.identifier == null) 368 this.identifier = new ArrayList<Identifier>(); 369 this.identifier.add(t); 370 return this; 371 } 372 373 /** 374 * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist 375 */ 376 public Identifier getIdentifierFirstRep() { 377 if (getIdentifier().isEmpty()) { 378 addIdentifier(); 379 } 380 return getIdentifier().get(0); 381 } 382 383 /** 384 * @return {@link #status} (active | suspended | error | off | test.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 385 */ 386 public Enumeration<EndpointStatus> getStatusElement() { 387 if (this.status == null) 388 if (Configuration.errorOnAutoCreate()) 389 throw new Error("Attempt to auto-create Endpoint.status"); 390 else if (Configuration.doAutoCreate()) 391 this.status = new Enumeration<EndpointStatus>(new EndpointStatusEnumFactory()); // bb 392 return this.status; 393 } 394 395 public boolean hasStatusElement() { 396 return this.status != null && !this.status.isEmpty(); 397 } 398 399 public boolean hasStatus() { 400 return this.status != null && !this.status.isEmpty(); 401 } 402 403 /** 404 * @param value {@link #status} (active | suspended | error | off | test.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 405 */ 406 public Endpoint setStatusElement(Enumeration<EndpointStatus> value) { 407 this.status = value; 408 return this; 409 } 410 411 /** 412 * @return active | suspended | error | off | test. 413 */ 414 public EndpointStatus getStatus() { 415 return this.status == null ? null : this.status.getValue(); 416 } 417 418 /** 419 * @param value active | suspended | error | off | test. 420 */ 421 public Endpoint setStatus(EndpointStatus value) { 422 if (this.status == null) 423 this.status = new Enumeration<EndpointStatus>(new EndpointStatusEnumFactory()); 424 this.status.setValue(value); 425 return this; 426 } 427 428 /** 429 * @return {@link #connectionType} (A coded value that represents the technical details of the usage of this endpoint, such as what WSDLs should be used in what way. (e.g. XDS.b/DICOM/cds-hook).) 430 */ 431 public Coding getConnectionType() { 432 if (this.connectionType == null) 433 if (Configuration.errorOnAutoCreate()) 434 throw new Error("Attempt to auto-create Endpoint.connectionType"); 435 else if (Configuration.doAutoCreate()) 436 this.connectionType = new Coding(); // cc 437 return this.connectionType; 438 } 439 440 public boolean hasConnectionType() { 441 return this.connectionType != null && !this.connectionType.isEmpty(); 442 } 443 444 /** 445 * @param value {@link #connectionType} (A coded value that represents the technical details of the usage of this endpoint, such as what WSDLs should be used in what way. (e.g. XDS.b/DICOM/cds-hook).) 446 */ 447 public Endpoint setConnectionType(Coding value) { 448 this.connectionType = value; 449 return this; 450 } 451 452 /** 453 * @return {@link #name} (A friendly name that this endpoint can be referred to with.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value 454 */ 455 public StringType getNameElement() { 456 if (this.name == null) 457 if (Configuration.errorOnAutoCreate()) 458 throw new Error("Attempt to auto-create Endpoint.name"); 459 else if (Configuration.doAutoCreate()) 460 this.name = new StringType(); // bb 461 return this.name; 462 } 463 464 public boolean hasNameElement() { 465 return this.name != null && !this.name.isEmpty(); 466 } 467 468 public boolean hasName() { 469 return this.name != null && !this.name.isEmpty(); 470 } 471 472 /** 473 * @param value {@link #name} (A friendly name that this endpoint can be referred to with.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value 474 */ 475 public Endpoint setNameElement(StringType value) { 476 this.name = value; 477 return this; 478 } 479 480 /** 481 * @return A friendly name that this endpoint can be referred to with. 482 */ 483 public String getName() { 484 return this.name == null ? null : this.name.getValue(); 485 } 486 487 /** 488 * @param value A friendly name that this endpoint can be referred to with. 489 */ 490 public Endpoint setName(String value) { 491 if (Utilities.noString(value)) 492 this.name = null; 493 else { 494 if (this.name == null) 495 this.name = new StringType(); 496 this.name.setValue(value); 497 } 498 return this; 499 } 500 501 /** 502 * @return {@link #managingOrganization} (The organization that manages this endpoint (even if technically another organization is hosting this in the cloud, it is the organization associated with the data).) 503 */ 504 public Reference getManagingOrganization() { 505 if (this.managingOrganization == null) 506 if (Configuration.errorOnAutoCreate()) 507 throw new Error("Attempt to auto-create Endpoint.managingOrganization"); 508 else if (Configuration.doAutoCreate()) 509 this.managingOrganization = new Reference(); // cc 510 return this.managingOrganization; 511 } 512 513 public boolean hasManagingOrganization() { 514 return this.managingOrganization != null && !this.managingOrganization.isEmpty(); 515 } 516 517 /** 518 * @param value {@link #managingOrganization} (The organization that manages this endpoint (even if technically another organization is hosting this in the cloud, it is the organization associated with the data).) 519 */ 520 public Endpoint setManagingOrganization(Reference value) { 521 this.managingOrganization = value; 522 return this; 523 } 524 525 /** 526 * @return {@link #managingOrganization} The actual object that is the target of the reference. The reference library doesn't populate this, but you can use it to hold the resource if you resolve it. (The organization that manages this endpoint (even if technically another organization is hosting this in the cloud, it is the organization associated with the data).) 527 */ 528 public Organization getManagingOrganizationTarget() { 529 if (this.managingOrganizationTarget == null) 530 if (Configuration.errorOnAutoCreate()) 531 throw new Error("Attempt to auto-create Endpoint.managingOrganization"); 532 else if (Configuration.doAutoCreate()) 533 this.managingOrganizationTarget = new Organization(); // aa 534 return this.managingOrganizationTarget; 535 } 536 537 /** 538 * @param value {@link #managingOrganization} The actual object that is the target of the reference. The reference library doesn't use these, but you can use it to hold the resource if you resolve it. (The organization that manages this endpoint (even if technically another organization is hosting this in the cloud, it is the organization associated with the data).) 539 */ 540 public Endpoint setManagingOrganizationTarget(Organization value) { 541 this.managingOrganizationTarget = value; 542 return this; 543 } 544 545 /** 546 * @return {@link #contact} (Contact details for a human to contact about the subscription. The primary use of this for system administrator troubleshooting.) 547 */ 548 public List<ContactPoint> getContact() { 549 if (this.contact == null) 550 this.contact = new ArrayList<ContactPoint>(); 551 return this.contact; 552 } 553 554 /** 555 * @return Returns a reference to <code>this</code> for easy method chaining 556 */ 557 public Endpoint setContact(List<ContactPoint> theContact) { 558 this.contact = theContact; 559 return this; 560 } 561 562 public boolean hasContact() { 563 if (this.contact == null) 564 return false; 565 for (ContactPoint item : this.contact) 566 if (!item.isEmpty()) 567 return true; 568 return false; 569 } 570 571 public ContactPoint addContact() { //3 572 ContactPoint t = new ContactPoint(); 573 if (this.contact == null) 574 this.contact = new ArrayList<ContactPoint>(); 575 this.contact.add(t); 576 return t; 577 } 578 579 public Endpoint addContact(ContactPoint t) { //3 580 if (t == null) 581 return this; 582 if (this.contact == null) 583 this.contact = new ArrayList<ContactPoint>(); 584 this.contact.add(t); 585 return this; 586 } 587 588 /** 589 * @return The first repetition of repeating field {@link #contact}, creating it if it does not already exist 590 */ 591 public ContactPoint getContactFirstRep() { 592 if (getContact().isEmpty()) { 593 addContact(); 594 } 595 return getContact().get(0); 596 } 597 598 /** 599 * @return {@link #period} (The interval during which the endpoint is expected to be operational.) 600 */ 601 public Period getPeriod() { 602 if (this.period == null) 603 if (Configuration.errorOnAutoCreate()) 604 throw new Error("Attempt to auto-create Endpoint.period"); 605 else if (Configuration.doAutoCreate()) 606 this.period = new Period(); // cc 607 return this.period; 608 } 609 610 public boolean hasPeriod() { 611 return this.period != null && !this.period.isEmpty(); 612 } 613 614 /** 615 * @param value {@link #period} (The interval during which the endpoint is expected to be operational.) 616 */ 617 public Endpoint setPeriod(Period value) { 618 this.period = value; 619 return this; 620 } 621 622 /** 623 * @return {@link #payloadType} (The payload type describes the acceptable content that can be communicated on the endpoint.) 624 */ 625 public List<CodeableConcept> getPayloadType() { 626 if (this.payloadType == null) 627 this.payloadType = new ArrayList<CodeableConcept>(); 628 return this.payloadType; 629 } 630 631 /** 632 * @return Returns a reference to <code>this</code> for easy method chaining 633 */ 634 public Endpoint setPayloadType(List<CodeableConcept> thePayloadType) { 635 this.payloadType = thePayloadType; 636 return this; 637 } 638 639 public boolean hasPayloadType() { 640 if (this.payloadType == null) 641 return false; 642 for (CodeableConcept item : this.payloadType) 643 if (!item.isEmpty()) 644 return true; 645 return false; 646 } 647 648 public CodeableConcept addPayloadType() { //3 649 CodeableConcept t = new CodeableConcept(); 650 if (this.payloadType == null) 651 this.payloadType = new ArrayList<CodeableConcept>(); 652 this.payloadType.add(t); 653 return t; 654 } 655 656 public Endpoint addPayloadType(CodeableConcept t) { //3 657 if (t == null) 658 return this; 659 if (this.payloadType == null) 660 this.payloadType = new ArrayList<CodeableConcept>(); 661 this.payloadType.add(t); 662 return this; 663 } 664 665 /** 666 * @return The first repetition of repeating field {@link #payloadType}, creating it if it does not already exist 667 */ 668 public CodeableConcept getPayloadTypeFirstRep() { 669 if (getPayloadType().isEmpty()) { 670 addPayloadType(); 671 } 672 return getPayloadType().get(0); 673 } 674 675 /** 676 * @return {@link #payloadMimeType} (The mime type to send the payload in - e.g. application/fhir+xml, application/fhir+json. If the mime type is not specified, then the sender could send any content (including no content depending on the connectionType).) 677 */ 678 public List<CodeType> getPayloadMimeType() { 679 if (this.payloadMimeType == null) 680 this.payloadMimeType = new ArrayList<CodeType>(); 681 return this.payloadMimeType; 682 } 683 684 /** 685 * @return Returns a reference to <code>this</code> for easy method chaining 686 */ 687 public Endpoint setPayloadMimeType(List<CodeType> thePayloadMimeType) { 688 this.payloadMimeType = thePayloadMimeType; 689 return this; 690 } 691 692 public boolean hasPayloadMimeType() { 693 if (this.payloadMimeType == null) 694 return false; 695 for (CodeType item : this.payloadMimeType) 696 if (!item.isEmpty()) 697 return true; 698 return false; 699 } 700 701 /** 702 * @return {@link #payloadMimeType} (The mime type to send the payload in - e.g. application/fhir+xml, application/fhir+json. If the mime type is not specified, then the sender could send any content (including no content depending on the connectionType).) 703 */ 704 public CodeType addPayloadMimeTypeElement() {//2 705 CodeType t = new CodeType(); 706 if (this.payloadMimeType == null) 707 this.payloadMimeType = new ArrayList<CodeType>(); 708 this.payloadMimeType.add(t); 709 return t; 710 } 711 712 /** 713 * @param value {@link #payloadMimeType} (The mime type to send the payload in - e.g. application/fhir+xml, application/fhir+json. If the mime type is not specified, then the sender could send any content (including no content depending on the connectionType).) 714 */ 715 public Endpoint addPayloadMimeType(String value) { //1 716 CodeType t = new CodeType(); 717 t.setValue(value); 718 if (this.payloadMimeType == null) 719 this.payloadMimeType = new ArrayList<CodeType>(); 720 this.payloadMimeType.add(t); 721 return this; 722 } 723 724 /** 725 * @param value {@link #payloadMimeType} (The mime type to send the payload in - e.g. application/fhir+xml, application/fhir+json. If the mime type is not specified, then the sender could send any content (including no content depending on the connectionType).) 726 */ 727 public boolean hasPayloadMimeType(String value) { 728 if (this.payloadMimeType == null) 729 return false; 730 for (CodeType v : this.payloadMimeType) 731 if (v.getValue().equals(value)) // code 732 return true; 733 return false; 734 } 735 736 /** 737 * @return {@link #address} (The uri that describes the actual end-point to connect to.). This is the underlying object with id, value and extensions. The accessor "getAddress" gives direct access to the value 738 */ 739 public UrlType getAddressElement() { 740 if (this.address == null) 741 if (Configuration.errorOnAutoCreate()) 742 throw new Error("Attempt to auto-create Endpoint.address"); 743 else if (Configuration.doAutoCreate()) 744 this.address = new UrlType(); // bb 745 return this.address; 746 } 747 748 public boolean hasAddressElement() { 749 return this.address != null && !this.address.isEmpty(); 750 } 751 752 public boolean hasAddress() { 753 return this.address != null && !this.address.isEmpty(); 754 } 755 756 /** 757 * @param value {@link #address} (The uri that describes the actual end-point to connect to.). This is the underlying object with id, value and extensions. The accessor "getAddress" gives direct access to the value 758 */ 759 public Endpoint setAddressElement(UrlType value) { 760 this.address = value; 761 return this; 762 } 763 764 /** 765 * @return The uri that describes the actual end-point to connect to. 766 */ 767 public String getAddress() { 768 return this.address == null ? null : this.address.getValue(); 769 } 770 771 /** 772 * @param value The uri that describes the actual end-point to connect to. 773 */ 774 public Endpoint setAddress(String value) { 775 if (this.address == null) 776 this.address = new UrlType(); 777 this.address.setValue(value); 778 return this; 779 } 780 781 /** 782 * @return {@link #header} (Additional headers / information to send as part of the notification.) 783 */ 784 public List<StringType> getHeader() { 785 if (this.header == null) 786 this.header = new ArrayList<StringType>(); 787 return this.header; 788 } 789 790 /** 791 * @return Returns a reference to <code>this</code> for easy method chaining 792 */ 793 public Endpoint setHeader(List<StringType> theHeader) { 794 this.header = theHeader; 795 return this; 796 } 797 798 public boolean hasHeader() { 799 if (this.header == null) 800 return false; 801 for (StringType item : this.header) 802 if (!item.isEmpty()) 803 return true; 804 return false; 805 } 806 807 /** 808 * @return {@link #header} (Additional headers / information to send as part of the notification.) 809 */ 810 public StringType addHeaderElement() {//2 811 StringType t = new StringType(); 812 if (this.header == null) 813 this.header = new ArrayList<StringType>(); 814 this.header.add(t); 815 return t; 816 } 817 818 /** 819 * @param value {@link #header} (Additional headers / information to send as part of the notification.) 820 */ 821 public Endpoint addHeader(String value) { //1 822 StringType t = new StringType(); 823 t.setValue(value); 824 if (this.header == null) 825 this.header = new ArrayList<StringType>(); 826 this.header.add(t); 827 return this; 828 } 829 830 /** 831 * @param value {@link #header} (Additional headers / information to send as part of the notification.) 832 */ 833 public boolean hasHeader(String value) { 834 if (this.header == null) 835 return false; 836 for (StringType v : this.header) 837 if (v.getValue().equals(value)) // string 838 return true; 839 return false; 840 } 841 842 protected void listChildren(List<Property> children) { 843 super.listChildren(children); 844 children.add(new Property("identifier", "Identifier", "Identifier for the organization that is used to identify the endpoint across multiple disparate systems.", 0, java.lang.Integer.MAX_VALUE, identifier)); 845 children.add(new Property("status", "code", "active | suspended | error | off | test.", 0, 1, status)); 846 children.add(new Property("connectionType", "Coding", "A coded value that represents the technical details of the usage of this endpoint, such as what WSDLs should be used in what way. (e.g. XDS.b/DICOM/cds-hook).", 0, 1, connectionType)); 847 children.add(new Property("name", "string", "A friendly name that this endpoint can be referred to with.", 0, 1, name)); 848 children.add(new Property("managingOrganization", "Reference(Organization)", "The organization that manages this endpoint (even if technically another organization is hosting this in the cloud, it is the organization associated with the data).", 0, 1, managingOrganization)); 849 children.add(new Property("contact", "ContactPoint", "Contact details for a human to contact about the subscription. The primary use of this for system administrator troubleshooting.", 0, java.lang.Integer.MAX_VALUE, contact)); 850 children.add(new Property("period", "Period", "The interval during which the endpoint is expected to be operational.", 0, 1, period)); 851 children.add(new Property("payloadType", "CodeableConcept", "The payload type describes the acceptable content that can be communicated on the endpoint.", 0, java.lang.Integer.MAX_VALUE, payloadType)); 852 children.add(new Property("payloadMimeType", "code", "The mime type to send the payload in - e.g. application/fhir+xml, application/fhir+json. If the mime type is not specified, then the sender could send any content (including no content depending on the connectionType).", 0, java.lang.Integer.MAX_VALUE, payloadMimeType)); 853 children.add(new Property("address", "url", "The uri that describes the actual end-point to connect to.", 0, 1, address)); 854 children.add(new Property("header", "string", "Additional headers / information to send as part of the notification.", 0, java.lang.Integer.MAX_VALUE, header)); 855 } 856 857 @Override 858 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 859 switch (_hash) { 860 case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Identifier for the organization that is used to identify the endpoint across multiple disparate systems.", 0, java.lang.Integer.MAX_VALUE, identifier); 861 case -892481550: /*status*/ return new Property("status", "code", "active | suspended | error | off | test.", 0, 1, status); 862 case 1270211384: /*connectionType*/ return new Property("connectionType", "Coding", "A coded value that represents the technical details of the usage of this endpoint, such as what WSDLs should be used in what way. (e.g. XDS.b/DICOM/cds-hook).", 0, 1, connectionType); 863 case 3373707: /*name*/ return new Property("name", "string", "A friendly name that this endpoint can be referred to with.", 0, 1, name); 864 case -2058947787: /*managingOrganization*/ return new Property("managingOrganization", "Reference(Organization)", "The organization that manages this endpoint (even if technically another organization is hosting this in the cloud, it is the organization associated with the data).", 0, 1, managingOrganization); 865 case 951526432: /*contact*/ return new Property("contact", "ContactPoint", "Contact details for a human to contact about the subscription. The primary use of this for system administrator troubleshooting.", 0, java.lang.Integer.MAX_VALUE, contact); 866 case -991726143: /*period*/ return new Property("period", "Period", "The interval during which the endpoint is expected to be operational.", 0, 1, period); 867 case 909929960: /*payloadType*/ return new Property("payloadType", "CodeableConcept", "The payload type describes the acceptable content that can be communicated on the endpoint.", 0, java.lang.Integer.MAX_VALUE, payloadType); 868 case -1702836932: /*payloadMimeType*/ return new Property("payloadMimeType", "code", "The mime type to send the payload in - e.g. application/fhir+xml, application/fhir+json. If the mime type is not specified, then the sender could send any content (including no content depending on the connectionType).", 0, java.lang.Integer.MAX_VALUE, payloadMimeType); 869 case -1147692044: /*address*/ return new Property("address", "url", "The uri that describes the actual end-point to connect to.", 0, 1, address); 870 case -1221270899: /*header*/ return new Property("header", "string", "Additional headers / information to send as part of the notification.", 0, java.lang.Integer.MAX_VALUE, header); 871 default: return super.getNamedProperty(_hash, _name, _checkValid); 872 } 873 874 } 875 876 @Override 877 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 878 switch (hash) { 879 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 880 case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration<EndpointStatus> 881 case 1270211384: /*connectionType*/ return this.connectionType == null ? new Base[0] : new Base[] {this.connectionType}; // Coding 882 case 3373707: /*name*/ return this.name == null ? new Base[0] : new Base[] {this.name}; // StringType 883 case -2058947787: /*managingOrganization*/ return this.managingOrganization == null ? new Base[0] : new Base[] {this.managingOrganization}; // Reference 884 case 951526432: /*contact*/ return this.contact == null ? new Base[0] : this.contact.toArray(new Base[this.contact.size()]); // ContactPoint 885 case -991726143: /*period*/ return this.period == null ? new Base[0] : new Base[] {this.period}; // Period 886 case 909929960: /*payloadType*/ return this.payloadType == null ? new Base[0] : this.payloadType.toArray(new Base[this.payloadType.size()]); // CodeableConcept 887 case -1702836932: /*payloadMimeType*/ return this.payloadMimeType == null ? new Base[0] : this.payloadMimeType.toArray(new Base[this.payloadMimeType.size()]); // CodeType 888 case -1147692044: /*address*/ return this.address == null ? new Base[0] : new Base[] {this.address}; // UrlType 889 case -1221270899: /*header*/ return this.header == null ? new Base[0] : this.header.toArray(new Base[this.header.size()]); // StringType 890 default: return super.getProperty(hash, name, checkValid); 891 } 892 893 } 894 895 @Override 896 public Base setProperty(int hash, String name, Base value) throws FHIRException { 897 switch (hash) { 898 case -1618432855: // identifier 899 this.getIdentifier().add(castToIdentifier(value)); // Identifier 900 return value; 901 case -892481550: // status 902 value = new EndpointStatusEnumFactory().fromType(castToCode(value)); 903 this.status = (Enumeration) value; // Enumeration<EndpointStatus> 904 return value; 905 case 1270211384: // connectionType 906 this.connectionType = castToCoding(value); // Coding 907 return value; 908 case 3373707: // name 909 this.name = castToString(value); // StringType 910 return value; 911 case -2058947787: // managingOrganization 912 this.managingOrganization = castToReference(value); // Reference 913 return value; 914 case 951526432: // contact 915 this.getContact().add(castToContactPoint(value)); // ContactPoint 916 return value; 917 case -991726143: // period 918 this.period = castToPeriod(value); // Period 919 return value; 920 case 909929960: // payloadType 921 this.getPayloadType().add(castToCodeableConcept(value)); // CodeableConcept 922 return value; 923 case -1702836932: // payloadMimeType 924 this.getPayloadMimeType().add(castToCode(value)); // CodeType 925 return value; 926 case -1147692044: // address 927 this.address = castToUrl(value); // UrlType 928 return value; 929 case -1221270899: // header 930 this.getHeader().add(castToString(value)); // StringType 931 return value; 932 default: return super.setProperty(hash, name, value); 933 } 934 935 } 936 937 @Override 938 public Base setProperty(String name, Base value) throws FHIRException { 939 if (name.equals("identifier")) { 940 this.getIdentifier().add(castToIdentifier(value)); 941 } else if (name.equals("status")) { 942 value = new EndpointStatusEnumFactory().fromType(castToCode(value)); 943 this.status = (Enumeration) value; // Enumeration<EndpointStatus> 944 } else if (name.equals("connectionType")) { 945 this.connectionType = castToCoding(value); // Coding 946 } else if (name.equals("name")) { 947 this.name = castToString(value); // StringType 948 } else if (name.equals("managingOrganization")) { 949 this.managingOrganization = castToReference(value); // Reference 950 } else if (name.equals("contact")) { 951 this.getContact().add(castToContactPoint(value)); 952 } else if (name.equals("period")) { 953 this.period = castToPeriod(value); // Period 954 } else if (name.equals("payloadType")) { 955 this.getPayloadType().add(castToCodeableConcept(value)); 956 } else if (name.equals("payloadMimeType")) { 957 this.getPayloadMimeType().add(castToCode(value)); 958 } else if (name.equals("address")) { 959 this.address = castToUrl(value); // UrlType 960 } else if (name.equals("header")) { 961 this.getHeader().add(castToString(value)); 962 } else 963 return super.setProperty(name, value); 964 return value; 965 } 966 967 @Override 968 public Base makeProperty(int hash, String name) throws FHIRException { 969 switch (hash) { 970 case -1618432855: return addIdentifier(); 971 case -892481550: return getStatusElement(); 972 case 1270211384: return getConnectionType(); 973 case 3373707: return getNameElement(); 974 case -2058947787: return getManagingOrganization(); 975 case 951526432: return addContact(); 976 case -991726143: return getPeriod(); 977 case 909929960: return addPayloadType(); 978 case -1702836932: return addPayloadMimeTypeElement(); 979 case -1147692044: return getAddressElement(); 980 case -1221270899: return addHeaderElement(); 981 default: return super.makeProperty(hash, name); 982 } 983 984 } 985 986 @Override 987 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 988 switch (hash) { 989 case -1618432855: /*identifier*/ return new String[] {"Identifier"}; 990 case -892481550: /*status*/ return new String[] {"code"}; 991 case 1270211384: /*connectionType*/ return new String[] {"Coding"}; 992 case 3373707: /*name*/ return new String[] {"string"}; 993 case -2058947787: /*managingOrganization*/ return new String[] {"Reference"}; 994 case 951526432: /*contact*/ return new String[] {"ContactPoint"}; 995 case -991726143: /*period*/ return new String[] {"Period"}; 996 case 909929960: /*payloadType*/ return new String[] {"CodeableConcept"}; 997 case -1702836932: /*payloadMimeType*/ return new String[] {"code"}; 998 case -1147692044: /*address*/ return new String[] {"url"}; 999 case -1221270899: /*header*/ return new String[] {"string"}; 1000 default: return super.getTypesForProperty(hash, name); 1001 } 1002 1003 } 1004 1005 @Override 1006 public Base addChild(String name) throws FHIRException { 1007 if (name.equals("identifier")) { 1008 return addIdentifier(); 1009 } 1010 else if (name.equals("status")) { 1011 throw new FHIRException("Cannot call addChild on a primitive type Endpoint.status"); 1012 } 1013 else if (name.equals("connectionType")) { 1014 this.connectionType = new Coding(); 1015 return this.connectionType; 1016 } 1017 else if (name.equals("name")) { 1018 throw new FHIRException("Cannot call addChild on a primitive type Endpoint.name"); 1019 } 1020 else if (name.equals("managingOrganization")) { 1021 this.managingOrganization = new Reference(); 1022 return this.managingOrganization; 1023 } 1024 else if (name.equals("contact")) { 1025 return addContact(); 1026 } 1027 else if (name.equals("period")) { 1028 this.period = new Period(); 1029 return this.period; 1030 } 1031 else if (name.equals("payloadType")) { 1032 return addPayloadType(); 1033 } 1034 else if (name.equals("payloadMimeType")) { 1035 throw new FHIRException("Cannot call addChild on a primitive type Endpoint.payloadMimeType"); 1036 } 1037 else if (name.equals("address")) { 1038 throw new FHIRException("Cannot call addChild on a primitive type Endpoint.address"); 1039 } 1040 else if (name.equals("header")) { 1041 throw new FHIRException("Cannot call addChild on a primitive type Endpoint.header"); 1042 } 1043 else 1044 return super.addChild(name); 1045 } 1046 1047 public String fhirType() { 1048 return "Endpoint"; 1049 1050 } 1051 1052 public Endpoint copy() { 1053 Endpoint dst = new Endpoint(); 1054 copyValues(dst); 1055 if (identifier != null) { 1056 dst.identifier = new ArrayList<Identifier>(); 1057 for (Identifier i : identifier) 1058 dst.identifier.add(i.copy()); 1059 }; 1060 dst.status = status == null ? null : status.copy(); 1061 dst.connectionType = connectionType == null ? null : connectionType.copy(); 1062 dst.name = name == null ? null : name.copy(); 1063 dst.managingOrganization = managingOrganization == null ? null : managingOrganization.copy(); 1064 if (contact != null) { 1065 dst.contact = new ArrayList<ContactPoint>(); 1066 for (ContactPoint i : contact) 1067 dst.contact.add(i.copy()); 1068 }; 1069 dst.period = period == null ? null : period.copy(); 1070 if (payloadType != null) { 1071 dst.payloadType = new ArrayList<CodeableConcept>(); 1072 for (CodeableConcept i : payloadType) 1073 dst.payloadType.add(i.copy()); 1074 }; 1075 if (payloadMimeType != null) { 1076 dst.payloadMimeType = new ArrayList<CodeType>(); 1077 for (CodeType i : payloadMimeType) 1078 dst.payloadMimeType.add(i.copy()); 1079 }; 1080 dst.address = address == null ? null : address.copy(); 1081 if (header != null) { 1082 dst.header = new ArrayList<StringType>(); 1083 for (StringType i : header) 1084 dst.header.add(i.copy()); 1085 }; 1086 return dst; 1087 } 1088 1089 protected Endpoint typedCopy() { 1090 return copy(); 1091 } 1092 1093 @Override 1094 public boolean equalsDeep(Base other_) { 1095 if (!super.equalsDeep(other_)) 1096 return false; 1097 if (!(other_ instanceof Endpoint)) 1098 return false; 1099 Endpoint o = (Endpoint) other_; 1100 return compareDeep(identifier, o.identifier, true) && compareDeep(status, o.status, true) && compareDeep(connectionType, o.connectionType, true) 1101 && compareDeep(name, o.name, true) && compareDeep(managingOrganization, o.managingOrganization, true) 1102 && compareDeep(contact, o.contact, true) && compareDeep(period, o.period, true) && compareDeep(payloadType, o.payloadType, true) 1103 && compareDeep(payloadMimeType, o.payloadMimeType, true) && compareDeep(address, o.address, true) 1104 && compareDeep(header, o.header, true); 1105 } 1106 1107 @Override 1108 public boolean equalsShallow(Base other_) { 1109 if (!super.equalsShallow(other_)) 1110 return false; 1111 if (!(other_ instanceof Endpoint)) 1112 return false; 1113 Endpoint o = (Endpoint) other_; 1114 return compareValues(status, o.status, true) && compareValues(name, o.name, true) && compareValues(payloadMimeType, o.payloadMimeType, true) 1115 && compareValues(address, o.address, true) && compareValues(header, o.header, true); 1116 } 1117 1118 public boolean isEmpty() { 1119 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, status, connectionType 1120 , name, managingOrganization, contact, period, payloadType, payloadMimeType, address 1121 , header); 1122 } 1123 1124 @Override 1125 public ResourceType getResourceType() { 1126 return ResourceType.Endpoint; 1127 } 1128 1129 /** 1130 * Search parameter: <b>payload-type</b> 1131 * <p> 1132 * Description: <b>The type of content that may be used at this endpoint (e.g. XDS Discharge summaries)</b><br> 1133 * Type: <b>token</b><br> 1134 * Path: <b>Endpoint.payloadType</b><br> 1135 * </p> 1136 */ 1137 @SearchParamDefinition(name="payload-type", path="Endpoint.payloadType", description="The type of content that may be used at this endpoint (e.g. XDS Discharge summaries)", type="token" ) 1138 public static final String SP_PAYLOAD_TYPE = "payload-type"; 1139 /** 1140 * <b>Fluent Client</b> search parameter constant for <b>payload-type</b> 1141 * <p> 1142 * Description: <b>The type of content that may be used at this endpoint (e.g. XDS Discharge summaries)</b><br> 1143 * Type: <b>token</b><br> 1144 * Path: <b>Endpoint.payloadType</b><br> 1145 * </p> 1146 */ 1147 public static final ca.uhn.fhir.rest.gclient.TokenClientParam PAYLOAD_TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_PAYLOAD_TYPE); 1148 1149 /** 1150 * Search parameter: <b>identifier</b> 1151 * <p> 1152 * Description: <b>Identifies this endpoint across multiple systems</b><br> 1153 * Type: <b>token</b><br> 1154 * Path: <b>Endpoint.identifier</b><br> 1155 * </p> 1156 */ 1157 @SearchParamDefinition(name="identifier", path="Endpoint.identifier", description="Identifies this endpoint across multiple systems", type="token" ) 1158 public static final String SP_IDENTIFIER = "identifier"; 1159 /** 1160 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 1161 * <p> 1162 * Description: <b>Identifies this endpoint across multiple systems</b><br> 1163 * Type: <b>token</b><br> 1164 * Path: <b>Endpoint.identifier</b><br> 1165 * </p> 1166 */ 1167 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 1168 1169 /** 1170 * Search parameter: <b>organization</b> 1171 * <p> 1172 * Description: <b>The organization that is managing the endpoint</b><br> 1173 * Type: <b>reference</b><br> 1174 * Path: <b>Endpoint.managingOrganization</b><br> 1175 * </p> 1176 */ 1177 @SearchParamDefinition(name="organization", path="Endpoint.managingOrganization", description="The organization that is managing the endpoint", type="reference", target={Organization.class } ) 1178 public static final String SP_ORGANIZATION = "organization"; 1179 /** 1180 * <b>Fluent Client</b> search parameter constant for <b>organization</b> 1181 * <p> 1182 * Description: <b>The organization that is managing the endpoint</b><br> 1183 * Type: <b>reference</b><br> 1184 * Path: <b>Endpoint.managingOrganization</b><br> 1185 * </p> 1186 */ 1187 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam ORGANIZATION = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_ORGANIZATION); 1188 1189/** 1190 * Constant for fluent queries to be used to add include statements. Specifies 1191 * the path value of "<b>Endpoint:organization</b>". 1192 */ 1193 public static final ca.uhn.fhir.model.api.Include INCLUDE_ORGANIZATION = new ca.uhn.fhir.model.api.Include("Endpoint:organization").toLocked(); 1194 1195 /** 1196 * Search parameter: <b>connection-type</b> 1197 * <p> 1198 * Description: <b>Protocol/Profile/Standard to be used with this endpoint connection</b><br> 1199 * Type: <b>token</b><br> 1200 * Path: <b>Endpoint.connectionType</b><br> 1201 * </p> 1202 */ 1203 @SearchParamDefinition(name="connection-type", path="Endpoint.connectionType", description="Protocol/Profile/Standard to be used with this endpoint connection", type="token" ) 1204 public static final String SP_CONNECTION_TYPE = "connection-type"; 1205 /** 1206 * <b>Fluent Client</b> search parameter constant for <b>connection-type</b> 1207 * <p> 1208 * Description: <b>Protocol/Profile/Standard to be used with this endpoint connection</b><br> 1209 * Type: <b>token</b><br> 1210 * Path: <b>Endpoint.connectionType</b><br> 1211 * </p> 1212 */ 1213 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CONNECTION_TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CONNECTION_TYPE); 1214 1215 /** 1216 * Search parameter: <b>name</b> 1217 * <p> 1218 * Description: <b>A name that this endpoint can be identified by</b><br> 1219 * Type: <b>string</b><br> 1220 * Path: <b>Endpoint.name</b><br> 1221 * </p> 1222 */ 1223 @SearchParamDefinition(name="name", path="Endpoint.name", description="A name that this endpoint can be identified by", type="string" ) 1224 public static final String SP_NAME = "name"; 1225 /** 1226 * <b>Fluent Client</b> search parameter constant for <b>name</b> 1227 * <p> 1228 * Description: <b>A name that this endpoint can be identified by</b><br> 1229 * Type: <b>string</b><br> 1230 * Path: <b>Endpoint.name</b><br> 1231 * </p> 1232 */ 1233 public static final ca.uhn.fhir.rest.gclient.StringClientParam NAME = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_NAME); 1234 1235 /** 1236 * Search parameter: <b>status</b> 1237 * <p> 1238 * Description: <b>The current status of the Endpoint (usually expected to be active)</b><br> 1239 * Type: <b>token</b><br> 1240 * Path: <b>Endpoint.status</b><br> 1241 * </p> 1242 */ 1243 @SearchParamDefinition(name="status", path="Endpoint.status", description="The current status of the Endpoint (usually expected to be active)", type="token" ) 1244 public static final String SP_STATUS = "status"; 1245 /** 1246 * <b>Fluent Client</b> search parameter constant for <b>status</b> 1247 * <p> 1248 * Description: <b>The current status of the Endpoint (usually expected to be active)</b><br> 1249 * Type: <b>token</b><br> 1250 * Path: <b>Endpoint.status</b><br> 1251 * </p> 1252 */ 1253 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); 1254 1255 1256} 1257