From 78fd13c2f4363dc9ecb54b50e771e9ea0b773751 Mon Sep 17 00:00:00 2001
From: James
+ * Defaults to 2000
+ *
- * Search results are stored in the database so that they can be paged over multiple
- * requests. After this
- * number of milliseconds, they will be deleted from the database, and any paging links
- * (next/prev links in search response bundles) will become invalid. Defaults to 1 hour.
- *
- *
- * To disable this feature entirely, see {@link #setExpireSearchResults(boolean)}
- *
- * For example, if the database has a million Patient resources in it, and
- * the client requests
- * The default value is
- * If set to
- * The default value for this setting is 1000.
- *
- * This approach can improve performance, especially under heavy load, but can also mean that
- * searches may potentially return slightly out-of-date results.
- *
- * For example, if the set contains the value
- * Note that this property has different behaviour from {@link DaoConfig#getTreatReferencesAsLogical()}
- *
- * A logical reference is a reference which is treated as an identifier, and
- * does not neccesarily resolve. See {@link "http://hl7.org/fhir/references.html"} for
- * a description of logical references. For example, the valueset
- * {@link "http://hl7.org/fhir/valueset-quantity-comparator.html"} is a logical
- * reference.
- *
- * Values for this field may take either of the following forms:
- *
- * Under the default behaviour if this value has not been changed, the above
- * resource would be rejected by the server because it requires all references
- * to be resolvable on the local server.
- *
- * Note that external references will be indexed by the server and may be searched
- * (e.g.
- * It is recommended to also set {@link #setTreatBaseUrlsAsLocal(Set)} if this value
- * is set to
- * This can be useful if you want to be able to disable or alter
- * the behaviour of the default search parameters.
- *
- * The default value for this setting is {@code false}
- *
- * This property can cause confusing results for clients of the server since searches, includes,
- * and other FHIR features may not behave as expected when referential integrity is not
- * preserved. Use this feature with caution.
- *
- * For example, if a patient contains a reference to managing organization
- * This property can cause confusing results for clients of the server since searches, includes,
- * and other FHIR features may not behave as expected when referential integrity is not
- * preserved. Use this feature with caution.
- *
- * This feature is useful if you want to define your own process for deleting these (e.g. because
- * you are running in a cluster)
- *
- * If set to {@literal false}, all updates will result in the creation of a new version
- *
- * Under the default behaviour if this value has not been changed, the above
- * resource would be rejected by the server because it requires all references
- * to be resolvable on the local server.
- *
- * Note that external references will be indexed by the server and may be searched
- * (e.g.
- * It is recommended to also set {@link #setTreatBaseUrlsAsLocal(Set)} if this value
- * is set to
- * Default is {@literal true} beginning in HAPI FHIR 2.4, since this
- * feature is now specified in the FHIR specification. (Previously it
- * was an experimental/rpposed feature)
- *
- * This can be useful if you want to be able to disable or alter
- * the behaviour of the default search parameters.
- *
- * The default value for this setting is {@code false}
- *
- * Defaults to 2000
- *
- * This property can cause confusing results for clients of the server since searches, includes,
- * and other FHIR features may not behave as expected when referential integrity is not
- * preserved. Use this feature with caution.
- *
- * For example, if a patient contains a reference to managing organization
- * This property can cause confusing results for clients of the server since searches, includes,
- * and other FHIR features may not behave as expected when referential integrity is not
- * preserved. Use this feature with caution.
- *
- * This feature is useful if you want to define your own process for deleting these (e.g. because
- * you are running in a cluster)
+ * Search results are stored in the database so that they can be paged over multiple
+ * requests. After this
+ * number of milliseconds, they will be deleted from the database, and any paging links
+ * (next/prev links in search response bundles) will become invalid. Defaults to 1 hour.
*
+ *
+ * To disable this feature entirely, see {@link #setExpireSearchResults(boolean)}
+ * GET /Patient
, if this value is set
- * to a non-null value (default is null
) only this number
- * of results will be fetched. Setting this value appropriately
- * can be useful to improve performance in some situations.
- * transaction
or
- * batch
operation. For example, if this value is set to 100
and
- * a FHIR transaction is processed with a sub-request for Patient?gender=male
,
- * the server will throw an error (and the transaction will fail) if there are more than
- * 100 resources on the server which match this query.
- * null
, which means that there is no limit.
- * null
, no limit will be applied.
- * http://example.com/base/
- * and a resource is submitted to the server that contains a reference to
- * http://example.com/base/Patient/1
, the server will automatically
- * convert this reference to Patient/1
- *
- *
- *
- * @see #DEFAULT_LOGICAL_BASE_URLS Default values for this property
- */
- public Sethttp://example.com/some-url
(will be matched exactly)http://example.com/some-base*
(will match anything beginning with the part before the *)true
(default is false
) the server will allow
- * resources to have references to external servers. For example if this server is
- * running at http://example.com/fhir
and this setting is set to
- * true
the server will allow a Patient resource to be saved with a
- * Patient.organization value of http://foo.com/Organization/1
.
- * Patient:organization
), but
- * chained searches (e.g. Patient:organization.name
) will not work across
- * these references.
- * true
- * false
(default is true
) resources will be permitted to be
- * deleted even if other resources currently contain references to them.
- * false
(default is true
) resources will be permitted to be
- * created or updated even if they contain references to local resources that do not exist.
- * Organization/FOO
- * but FOO is not a valid ID for an organization on the server, the operation will be blocked unless
- * this propery has been set to false
- * false
(default is true
) the stale search deletion
- * task will be disabled (meaning that search results will be retained in the database indefinitely). USE WITH CAUTION.
- * true
)
- */
- public boolean isIndexContainedResources() {
- return myIndexContainedResources;
- }
-
- public boolean isSchedulingDisabled() {
- return mySchedulingDisabled;
- }
-
- /**
- * See {@link #setSubscriptionEnabled(boolean)}
- */
- public boolean isSubscriptionEnabled() {
- return mySubscriptionEnabled;
- }
-
- /**
- * If set to {@literal true} (default is true), if a client performs an update which does not actually
- * result in any chance to a given resource (e.g. an update where the resource body matches the
- * existing resource body in the database) the operation will succeed but a new version (and corresponding history
- * entry) will not actually be created. The existing resource version will be returned to the client.
- * true
(default is false
) the server will allow
- * resources to have references to external servers. For example if this server is
- * running at http://example.com/fhir
and this setting is set to
- * true
the server will allow a Patient resource to be saved with a
- * Patient.organization value of http://foo.com/Organization/1
.
- * Patient:organization
), but
- * chained searches (e.g. Patient:organization.name
) will not work across
- * these references.
- * true
- * false
(default is true
) resources will be permitted to be
- * deleted even if other resources currently contain references to them.
- * false
(default is true
) resources will be permitted to be
- * created or updated even if they contain references to local resources that do not exist.
- * Organization/FOO
- * but FOO is not a valid ID for an organization on the server, the operation will be blocked unless
- * this propery has been set to false
- * false
(default is true
) the stale search deletion
- * task will be disabled (meaning that search results will be retained in the database indefinitely). USE WITH CAUTION.
+ * Sets the number of milliseconds that search results for a given client search
+ * should be preserved before being purged from the database.
*
- * + *
*
* To disable this feature entirely, see {@link #setExpireSearchResults(boolean)} *
- * + * * @since 1.5 */ public void setExpireSearchResultsAfterMillis(long theExpireSearchResultsAfterMillis) { myExpireSearchResultsAfterMillis = theExpireSearchResultsAfterMillis; } + /** + * Gets the default maximum number of results to load in a query. + *
+ * For example, if the database has a million Patient resources in it, and
+ * the client requests GET /Patient
, if this value is set
+ * to a non-null value (default is null
) only this number
+ * of results will be fetched. Setting this value appropriately
+ * can be useful to improve performance in some situations.
+ *
@@ -639,16 +261,10 @@ public class DaoConfig {
}
/**
- * Do not call this method, it exists only for legacy reasons. It
- * will be removed in a future version. Configure the page size on your
- * paging provider instead.
- *
- * @deprecated This method does not do anything. Configure the page size on your
- * paging provider instead. Deprecated in HAPI FHIR 2.3 (Jan 2017)
+ * Gets the maximum number of results to return in a GetTags query (DSTU1 only)
*/
- @Deprecated
- public void setHardSearchLimit(int theHardSearchLimit) {
- // this method does nothing
+ public int getHardTagListLimit() {
+ return myHardTagListLimit;
}
/**
@@ -658,6 +274,10 @@ public class DaoConfig {
myHardTagListLimit = theHardTagListLimit;
}
+ public int getIncludeLimit() {
+ return myIncludeLimit;
+ }
+
/**
* This is the maximum number of resources that will be added to a single page of returned resources. Because of
* includes with wildcards and other possibilities it is possible for a client to make requests that include very
@@ -668,11 +288,15 @@ public class DaoConfig {
}
/**
- * Should contained IDs be indexed the same way that non-contained IDs are (default is
- *
* The default value is true
)
+ * Returns the interceptors which will be notified of operations.
+ *
+ * @see #setInterceptors(List)
*/
- public void setIndexContainedResources(boolean theIndexContainedResources) {
- myIndexContainedResources = theIndexContainedResources;
+ public Listtransaction
or
- * batch
operation. For example, if this value is set to 100
and
+ * batch
operation. For example, if this value is set to 100
and
* a FHIR transaction is processed with a sub-request for Patient?gender=male
,
* the server will throw an error (and the transaction will fail) if there are more than
* 100 resources on the server which match this query.
* null
, which means that there is no limit.
- *
transaction
or
+ * batch
operation. For example, if this value is set to 100
and
+ * a FHIR transaction is processed with a sub-request for Patient?gender=male
,
+ * the server will throw an error (and the transaction will fail) if there are more than
+ * 100 resources on the server which match this query.
+ *
+ * The default value is null
, which means that there is no limit.
+ *
+ * If set to null
, no limit will be applied.
+ *
+ * The default value for this setting is 1000. + *
+ */ + public Integer getResourceMetaCountHardLimit() { + return myResourceMetaCountHardLimit; + } + /** * If set, an individual resource will not be allowed to have more than the * given number of tags, profiles, and security labels (the limit is for the combined @@ -735,6 +393,21 @@ public class DaoConfig { myResourceMetaCountHardLimit = theResourceMetaCountHardLimit; } + /** + * If set to a non {@literal null} value (default is {@link #DEFAULT_REUSE_CACHED_SEARCH_RESULTS_FOR_MILLIS non null}) + * if an identical search is requested multiple times within this window, the same results will be returned + * to multiple queries. For example, if this value is set to 1 minute and a client searches for all + * patients named "smith", and then a second client also performs the same search within 1 minute, + * the same cached results will be returned. + *+ * This approach can improve performance, especially under heavy load, but can also mean that + * searches may potentially return slightly out-of-date results. + *
+ */ + public Long getReuseCachedSearchResultsForMillis() { + return myReuseCachedSearchResultsForMillis; + } + /** * If set to a non {@literal null} value (default is {@link #DEFAULT_REUSE_CACHED_SEARCH_RESULTS_FOR_MILLIS non null}) * if an identical search is requested multiple times within this window, the same results will be returned @@ -750,23 +423,18 @@ public class DaoConfig { myReuseCachedSearchResultsForMillis = theReuseCachedSearchResultsForMillis; } - public void setSchedulingDisabled(boolean theSchedulingDisabled) { - mySchedulingDisabled = theSchedulingDisabled; - } - - /** - * If set to true, the server will enable support for subscriptions. Subscriptions - * will by default be handled via a polling task. Note that if this is enabled, you must also include Spring task scanning to your XML - * config for the scheduled tasks used by the subscription module. - */ - public void setSubscriptionEnabled(boolean theSubscriptionEnabled) { - mySubscriptionEnabled = theSubscriptionEnabled; + public long getSubscriptionPollDelay() { + return mySubscriptionPollDelay; } public void setSubscriptionPollDelay(long theSubscriptionPollDelay) { mySubscriptionPollDelay = theSubscriptionPollDelay; } + public Long getSubscriptionPurgeInactiveAfterMillis() { + return mySubscriptionPurgeInactiveAfterMillis; + } + public void setSubscriptionPurgeInactiveAfterMillis(Long theMillis) { if (theMillis != null) { Validate.exclusiveBetween(0, Long.MAX_VALUE, theMillis); @@ -774,24 +442,6 @@ public class DaoConfig { mySubscriptionPurgeInactiveAfterMillis = theMillis; } - public void setSubscriptionPurgeInactiveAfterSeconds(int theSeconds) { - setSubscriptionPurgeInactiveAfterMillis(theSeconds * DateUtils.MILLIS_PER_SECOND); - } - - /** - * If set to {@literal true} (default is true), if a client performs an update which does not actually - * result in any chance to a given resource (e.g. an update where the resource body matches the - * existing resource body in the database) the operation will succeed but a new version (and corresponding history - * entry) will not actually be created. The existing resource version will be returned to the client. - *- * If set to {@literal false}, all updates will result in the creation of a new version - *
- */ - public void setSuppressUpdatesWithNoChange(boolean theSuppressUpdatesWithNoChange) { - mySuppressUpdatesWithNoChange = theSuppressUpdatesWithNoChange; - - } - /** * This setting may be used to advise the server that any references found in * resources that have any of the base URLs given here will be replaced with @@ -802,10 +452,29 @@ public class DaoConfig { *http://example.com/base/Patient/1
, the server will automatically
* convert this reference to Patient/1
*
- *
- * @param theTreatBaseUrlsAsLocal
- * The set of base URLs. May be null
, which
- * means no references will be treated as external
+ * + * Note that this property has different behaviour from {@link DaoConfig#getTreatReferencesAsLogical()} + *
+ * + * @see #getTreatReferencesAsLogical() + */ + public Set
+ * For example, if the set contains the value http://example.com/base/
+ * and a resource is submitted to the server that contains a reference to
+ * http://example.com/base/Patient/1
, the server will automatically
+ * convert this reference to Patient/1
+ *
null
, which
+ * means no references will be treated as external
*/
public void setTreatBaseUrlsAsLocal(Sethttp://example.com/some-url
(will be matched exactly)http://example.com/some-base*
(will match anything beginning with the part before the *)+ * A logical reference is a reference which is treated as an identifier, and + * does not neccesarily resolve. See {@link "http://hl7.org/fhir/references.html"} for + * a description of logical references. For example, the valueset + * {@link "http://hl7.org/fhir/valueset-quantity-comparator.html"} is a logical + * reference. + *
+ *+ * Values for this field may take either of the following forms: + *
+ *http://example.com/some-url
(will be matched exactly)http://example.com/some-base*
(will match anything beginning with the part before the *)true
(default is false
) the server will allow
+ * resources to have references to external servers. For example if this server is
+ * running at http://example.com/fhir
and this setting is set to
+ * true
the server will allow a Patient resource to be saved with a
+ * Patient.organization value of http://foo.com/Organization/1
.
+ * + * Under the default behaviour if this value has not been changed, the above + * resource would be rejected by the server because it requires all references + * to be resolvable on the local server. + *
+ *
+ * Note that external references will be indexed by the server and may be searched
+ * (e.g. Patient:organization
), but
+ * chained searches (e.g. Patient:organization.name
) will not work across
+ * these references.
+ *
+ * It is recommended to also set {@link #setTreatBaseUrlsAsLocal(Set)} if this value
+ * is set to true
+ *
true
(default is false
) the server will allow
+ * resources to have references to external servers. For example if this server is
+ * running at http://example.com/fhir
and this setting is set to
+ * true
the server will allow a Patient resource to be saved with a
+ * Patient.organization value of http://foo.com/Organization/1
.
+ * + * Under the default behaviour if this value has not been changed, the above + * resource would be rejected by the server because it requires all references + * to be resolvable on the local server. + *
+ *
+ * Note that external references will be indexed by the server and may be searched
+ * (e.g. Patient:organization
), but
+ * chained searches (e.g. Patient:organization.name
) will not work across
+ * these references.
+ *
+ * It is recommended to also set {@link #setTreatBaseUrlsAsLocal(Set)} if this value
+ * is set to true
+ *
+ * Default is {@literal true} beginning in HAPI FHIR 2.4, since this + * feature is now specified in the FHIR specification. (Previously it + * was an experimental/rpposed feature) + *
+ * + * @since 1.5 + */ + public void setAllowInlineMatchUrlReferences(boolean theAllowInlineMatchUrlReferences) { + myAllowInlineMatchUrlReferences = theAllowInlineMatchUrlReferences; + } + + public boolean isAllowMultipleDelete() { + return myAllowMultipleDelete; + } + + public void setAllowMultipleDelete(boolean theAllowMultipleDelete) { + myAllowMultipleDelete = theAllowMultipleDelete; + } + + /** + * When creating or updating a resource: If this property is set totrue
+ * (default is false
), if the resource has a reference to another resource
+ * on the local server but that reference does not exist, a placeholder resource will be
+ * created.
+ *
+ * In other words, if an observation with subject Patient/FOO
is created, but
+ * there is no resource called Patient/FOO
on the server, this property causes
+ * an empty patient with ID "FOO" to be created in order to prevent this operation
+ * from failing.
+ *
+ * This property can be useful in cases where replication between two servers is wanted. + * Note however that references containing purely numeric IDs will not be auto-created + * as they are never allowed to be client supplied in HAPI FHIR JPA. + *
+ */ + public boolean isAutoCreatePlaceholderReferenceTargets() { + return myAutoCreatePlaceholderReferenceTargets; + } + + /** + * When creating or updating a resource: If this property is set totrue
+ * (default is false
), if the resource has a reference to another resource
+ * on the local server but that reference does not exist, a placeholder resource will be
+ * created.
+ *
+ * In other words, if an observation with subject Patient/FOO
is created, but
+ * there is no resource called Patient/FOO
on the server, this property causes
+ * an empty patient with ID "FOO" to be created in order to prevent this operation
+ * from failing.
+ *
+ * This property can be useful in cases where replication between two servers is wanted. + * Note however that references containing purely numeric IDs will not be auto-created + * as they are never allowed to be client supplied in HAPI FHIR JPA. + *
+ */ + public void setAutoCreatePlaceholderReferenceTargets(boolean theAutoCreatePlaceholderReferenceTargets) { + myAutoCreatePlaceholderReferenceTargets = theAutoCreatePlaceholderReferenceTargets; + } + + /** + * If set to {@code true} the default search params (i.e. the search parameters that are + * defined by the FHIR specification itself) may be overridden by uploading search + * parameters to the server with the same code as the built-in search parameter. + *+ * This can be useful if you want to be able to disable or alter + * the behaviour of the default search parameters. + *
+ *+ * The default value for this setting is {@code false} + *
+ */ + public boolean isDefaultSearchParamsCanBeOverridden() { + return myDefaultSearchParamsCanBeOverridden; + } + + /** + * If set to {@code true} the default search params (i.e. the search parameters that are + * defined by the FHIR specification itself) may be overridden by uploading search + * parameters to the server with the same code as the built-in search parameter. + *+ * This can be useful if you want to be able to disable or alter + * the behaviour of the default search parameters. + *
+ *+ * The default value for this setting is {@code false} + *
+ */ + public void setDefaultSearchParamsCanBeOverridden(boolean theDefaultSearchParamsCanBeOverridden) { + myDefaultSearchParamsCanBeOverridden = theDefaultSearchParamsCanBeOverridden; + } + + /** + * If set tofalse
(default is true
) resources will be permitted to be
+ * deleted even if other resources currently contain references to them.
+ * + * This property can cause confusing results for clients of the server since searches, includes, + * and other FHIR features may not behave as expected when referential integrity is not + * preserved. Use this feature with caution. + *
+ */ + public boolean isEnforceReferentialIntegrityOnDelete() { + return myEnforceReferentialIntegrityOnDelete; + } + + /** + * If set tofalse
(default is true
) resources will be permitted to be
+ * deleted even if other resources currently contain references to them.
+ * + * This property can cause confusing results for clients of the server since searches, includes, + * and other FHIR features may not behave as expected when referential integrity is not + * preserved. Use this feature with caution. + *
+ */ + public void setEnforceReferentialIntegrityOnDelete(boolean theEnforceReferentialIntegrityOnDelete) { + myEnforceReferentialIntegrityOnDelete = theEnforceReferentialIntegrityOnDelete; + } + + /** + * If set tofalse
(default is true
) resources will be permitted to be
+ * created or updated even if they contain references to local resources that do not exist.
+ *
+ * For example, if a patient contains a reference to managing organization Organization/FOO
+ * but FOO is not a valid ID for an organization on the server, the operation will be blocked unless
+ * this propery has been set to false
+ *
+ * This property can cause confusing results for clients of the server since searches, includes, + * and other FHIR features may not behave as expected when referential integrity is not + * preserved. Use this feature with caution. + *
+ */ + public boolean isEnforceReferentialIntegrityOnWrite() { + return myEnforceReferentialIntegrityOnWrite; + } + + /** + * If set tofalse
(default is true
) resources will be permitted to be
+ * created or updated even if they contain references to local resources that do not exist.
+ *
+ * For example, if a patient contains a reference to managing organization Organization/FOO
+ * but FOO is not a valid ID for an organization on the server, the operation will be blocked unless
+ * this propery has been set to false
+ *
+ * This property can cause confusing results for clients of the server since searches, includes, + * and other FHIR features may not behave as expected when referential integrity is not + * preserved. Use this feature with caution. + *
+ */ + public void setEnforceReferentialIntegrityOnWrite(boolean theEnforceReferentialIntegrityOnWrite) { + myEnforceReferentialIntegrityOnWrite = theEnforceReferentialIntegrityOnWrite; + } + + /** + * If this is set tofalse
(default is true
) the stale search deletion
+ * task will be disabled (meaning that search results will be retained in the database indefinitely). USE WITH CAUTION.
+ * + * This feature is useful if you want to define your own process for deleting these (e.g. because + * you are running in a cluster) + *
+ */ + public boolean isExpireSearchResults() { + return myDeleteStaleSearches; + } + + /** + * If this is set tofalse
(default is true
) the stale search deletion
+ * task will be disabled (meaning that search results will be retained in the database indefinitely). USE WITH CAUTION.
+ * + * This feature is useful if you want to define your own process for deleting these (e.g. because + * you are running in a cluster) + *
+ */ + public void setExpireSearchResults(boolean theDeleteStaleSearches) { + myDeleteStaleSearches = theDeleteStaleSearches; + } + + /** + * Should contained IDs be indexed the same way that non-contained IDs are (default is + *true
)
+ */
+ public boolean isIndexContainedResources() {
+ return myIndexContainedResources;
+ }
+
+ /**
+ * Should contained IDs be indexed the same way that non-contained IDs are (default is
+ * true
)
+ */
+ public void setIndexContainedResources(boolean theIndexContainedResources) {
+ myIndexContainedResources = theIndexContainedResources;
+ }
+
+ public boolean isSchedulingDisabled() {
+ return mySchedulingDisabled;
+ }
+
+ public void setSchedulingDisabled(boolean theSchedulingDisabled) {
+ mySchedulingDisabled = theSchedulingDisabled;
+ }
+
+ /**
+ * See {@link #setSubscriptionEnabled(boolean)}
+ */
+ public boolean isSubscriptionEnabled() {
+ return mySubscriptionEnabled;
+ }
+
+ /**
+ * If set to true, the server will enable support for subscriptions. Subscriptions
+ * will by default be handled via a polling task. Note that if this is enabled, you must also include Spring task scanning to your XML
+ * config for the scheduled tasks used by the subscription module.
+ */
+ public void setSubscriptionEnabled(boolean theSubscriptionEnabled) {
+ mySubscriptionEnabled = theSubscriptionEnabled;
+ }
+
+ /**
+ * If set to {@literal true} (default is true), if a client performs an update which does not actually
+ * result in any chance to a given resource (e.g. an update where the resource body matches the
+ * existing resource body in the database) the operation will succeed but a new version (and corresponding history
+ * entry) will not actually be created. The existing resource version will be returned to the client.
+ * + * If set to {@literal false}, all updates will result in the creation of a new version + *
+ */ + public boolean isSuppressUpdatesWithNoChange() { + return mySuppressUpdatesWithNoChange; + } + + /** + * If set to {@literal true} (default is true), if a client performs an update which does not actually + * result in any chance to a given resource (e.g. an update where the resource body matches the + * existing resource body in the database) the operation will succeed but a new version (and corresponding history + * entry) will not actually be created. The existing resource version will be returned to the client. + *+ * If set to {@literal false}, all updates will result in the creation of a new version + *
+ */ + public void setSuppressUpdatesWithNoChange(boolean theSuppressUpdatesWithNoChange) { + mySuppressUpdatesWithNoChange = theSuppressUpdatesWithNoChange; + + } + + /** + * Do not call this method, it exists only for legacy reasons. It + * will be removed in a future version. Configure the page size on your + * paging provider instead. + * + * @deprecated This method does not do anything. Configure the page size on your + * paging provider instead. Deprecated in HAPI FHIR 2.3 (Jan 2017) + */ + @Deprecated + public void setHardSearchLimit(int theHardSearchLimit) { + // this method does nothing + } + + /** + * This may be used to optionally register server interceptors directly against the DAOs. + */ + public void setInterceptors(List