View Javadoc
1   package ca.uhn.fhir.rest.api;
2   
3   /*
4    * #%L
5    * HAPI FHIR - Core Library
6    * %%
7    * Copyright (C) 2014 - 2018 University Health Network
8    * %%
9    * Licensed under the Apache License, Version 2.0 (the "License");
10   * you may not use this file except in compliance with the License.
11   * You may obtain a copy of the License at
12   * 
13   *      http://www.apache.org/licenses/LICENSE-2.0
14   * 
15   * Unless required by applicable law or agreed to in writing, software
16   * distributed under the License is distributed on an "AS IS" BASIS,
17   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18   * See the License for the specific language governing permissions and
19   * limitations under the License.
20   * #L%
21   */
22  import java.util.*;
23  
24  import org.hl7.fhir.instance.model.api.IBaseResource;
25  import org.hl7.fhir.instance.model.api.IPrimitiveType;
26  
27  import ca.uhn.fhir.context.api.BundleInclusionRule;
28  import ca.uhn.fhir.model.api.Include;
29  import ca.uhn.fhir.model.valueset.BundleTypeEnum;
30  
31  /**
32   * This interface should be considered experimental and will likely change in future releases of HAPI. Use with caution!
33   */
34  public interface IVersionSpecificBundleFactory {
35  
36  	void addResourcesToBundle(List<IBaseResource> theResult, BundleTypeEnum theBundleType, String theServerBase, BundleInclusionRule theBundleInclusionRule, Set<Include> theIncludes);
37  
38  	void addRootPropertiesToBundle(String theId, String theServerBase, String theLinkSelf, String theLinkPrev, String theLinkNext, Integer theTotalResults, BundleTypeEnum theBundleType, IPrimitiveType<Date> theLastUpdated);
39  
40  	IBaseResource getResourceBundle();
41  
42  	void initializeBundleFromResourceList(String theAuthor, List<? extends IBaseResource> theResult, String theServerBase, String theCompleteUrl, int theTotalResults, BundleTypeEnum theBundleType);
43  
44  	void initializeWithBundleResource(IBaseResource theResource);
45  
46  	List<IBaseResource> toListOfResources();
47  
48  }