Class GetOperationOptions
- All Implemented Interfaces:
ShortDumpable
,Serializable
,Cloneable
- Author:
- semancik
- See Also:
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionallowNotFound
(Boolean allowNotFound) attachDiagData
(Boolean value) clone()
static GetOperationOptions
This flag indicated if the "object not found" error is critical for processing the original request.static Collection<SelectorOptions<GetOperationOptions>>
static GetOperationOptions
Whether to attach diagnostics data to the returned object(s).static GetOperationOptions
TODOstatic GetOperationOptions
Should the results be made distinct.static GetOperationOptions
Force to get object from the resource even if some of the error occurred.static GetOperationOptions
Specifies whether to return specific items.static GetOperationOptions
static GetOperationOptions
static GetOperationOptions
static GetOperationOptions
Whether to override default iteration method (in searchObjectsIterative) configured for particular DBMS.static GetOperationOptions
static GetOperationOptions
No not fetch any information from external sources, e.g.static Collection<SelectorOptions<GetOperationOptions>>
No not fetch any information from external sources, e.g.static Collection<SelectorOptions<GetOperationOptions>>
static GetOperationOptions
Specifies the point in time for the returned data.static GetOperationOptions
Avoid any smart processing of the data except for schema application.static Collection<SelectorOptions<GetOperationOptions>>
Avoid any smart processing of the data except for schema application.static GetOperationOptions
Return read-only object.static Collection<SelectorOptions<GetOperationOptions>>
static GetOperationOptions
Resolve the object reference.static GetOperationOptions
Resolve the object reference names.static GetOperationOptions
Specifies whether to return specific items.static GetOperationOptions
Specifies whether to return specific items.static GetOperationOptions
createRetrieve
(RetrieveOption retrieve) static Collection<SelectorOptions<GetOperationOptions>>
AscreateRetrieve()
but returns the whole collection.static GetOperationOptions
createStaleness
(Long staleness) Requirement how stale or fresh the retrieved data should be.static GetOperationOptions
Tolerate "raw" data in returned object.definitionProcessing
(DefinitionProcessingOption definitionProcessing) static Collection<SelectorOptions<GetOperationOptions>>
Disables readOnly option (while not modifying the original object).doNotDiscovery
(Boolean force) boolean
executionPhase
(Boolean executionPhase) forceRefresh
(Boolean forceRefresh) static GetOperationOptions
fromRestOptions
(List<String> options, DefinitionProcessingOption definitionProcessing) static Collection<SelectorOptions<GetOperationOptions>>
fromRestOptions
(List<String> options, List<String> include, List<String> exclude, List<String> resolveNames, DefinitionProcessingOption definitionProcessing, PrismContext prismContext) static DefinitionProcessingOption
static DefinitionUpdateOption
getDefinitionUpdate
(GetOperationOptions options) static FetchErrorHandlingType
getErrorHandling
(GetOperationOptions options) static IterationMethodType
getIterationMethod
(GetOperationOptions options) static PointInTimeType
getPointInTimeType
(GetOperationOptions options) getRaw()
static @Nullable Boolean
getRaw
(@Nullable GetOperationOptions options) Returns the `raw` flag, if present.static RetrieveOption
getRetrieve
(GetOperationOptions options) static long
getStaleness
(GetOperationOptions options) int
hashCode()
static boolean
isAllowNotFound
(GetOperationOptions options) static boolean
static boolean
isAttachDiagData
(GetOperationOptions options) static boolean
isDistinct
(GetOperationOptions options) static boolean
isDoNotDiscovery
(GetOperationOptions options) static boolean
static boolean
isExecutionPhase
(GetOperationOptions options) static boolean
isForceRefresh
(GetOperationOptions options) static boolean
isForceRetry
(GetOperationOptions options) static boolean
isMaxStaleness
(GetOperationOptions options) static boolean
isNoFetch
(@Nullable Collection<SelectorOptions<GetOperationOptions>> options) static boolean
isNoFetch
(GetOperationOptions options) static boolean
isRaw
(@Nullable GetOperationOptions options) Returns the value of the `raw` flag.static boolean
isRaw
(@Nullable Collection<SelectorOptions<GetOperationOptions>> options) static boolean
isReadOnly
(GetOperationOptions options) static boolean
isResolve
(GetOperationOptions options) static boolean
isResolveNames
(GetOperationOptions options) static boolean
isTolerateRawData
(GetOperationOptions options) iterationMethod
(IterationMethodType iterationMethod) void
merge
(GetOperationOptions increment) static @NotNull Collection<SelectorOptions<GetOperationOptions>>
merge
(Collection<SelectorOptions<GetOperationOptions>>... parts) pointInTimeType
(PointInTimeType pointInTimeType) relationalValueSearchQuery
(RelationalValueSearchQuery relationalValueSearchQuery) resolveNames
(Boolean resolveNames) void
setAllowNotFound
(Boolean allowNotFound) void
setAttachDiagData
(Boolean value) void
setDefinitionProcessing
(DefinitionProcessingOption definitionProcessing) void
void
setDistinct
(Boolean distinct) void
setDoNotDiscovery
(Boolean force) void
void
setErrorReportingMethod
(FetchErrorReportingMethodType method, PrismContext prismContext) void
setExecutionPhase
(Boolean executionPhase) void
setForceRefresh
(Boolean forceRefresh) void
setForceRetry
(Boolean forceRetry) void
setIterationMethod
(IterationMethodType iterationMethod) void
setNoFetch
(Boolean noFetch) void
setPointInTimeType
(PointInTimeType pointInTimeType) void
void
setReadOnly
(Boolean readOnly) void
setRelationalValueSearchQuery
(RelationalValueSearchQuery relationalValueSearchQuery) void
setResolve
(Boolean resolve) void
setResolveNames
(Boolean resolveNames) void
setRetrieve
(RetrieveOption retrieve) void
setStaleness
(Long staleness) void
setTolerateRawData
(Boolean value) void
Show the content of the object intended for diagnostics.tolerateRawData
(Boolean value) toString()
static Collection<SelectorOptions<GetOperationOptions>>
updateRootOptions
(Collection<SelectorOptions<GetOperationOptions>> options, Consumer<GetOperationOptions> updater) static Collection<SelectorOptions<GetOperationOptions>>
updateRootOptionsSafe
(Collection<SelectorOptions<GetOperationOptions>> options, Predicate<GetOperationOptions> predicate, Consumer<GetOperationOptions> updater) static Collection<SelectorOptions<GetOperationOptions>>
updateToDistinct
(Collection<SelectorOptions<GetOperationOptions>> originalOptions) static Collection<SelectorOptions<GetOperationOptions>>
updateToNoFetch
(Collection<SelectorOptions<GetOperationOptions>> originalOptions) static Collection<SelectorOptions<GetOperationOptions>>
updateToRaw
(Collection<SelectorOptions<GetOperationOptions>> originalOptions, boolean value) static Collection<SelectorOptions<GetOperationOptions>>
updateToReadOnly
(Collection<SelectorOptions<GetOperationOptions>> originalOptions) static Collection<SelectorOptions<GetOperationOptions>>
updateToReadWrite
(Collection<SelectorOptions<GetOperationOptions>> originalOptions) static Collection<SelectorOptions<GetOperationOptions>>
updateToReadWriteSafe
(Collection<SelectorOptions<GetOperationOptions>> originalOptions) AsupdateToReadWrite(Collection)
but does not modify the original options.Methods inherited from class com.evolveum.midpoint.schema.AbstractOptions
appendFlag, appendVal, removeLastComma
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.evolveum.midpoint.util.ShortDumpable
shortDump, shortDumpLazily
-
Field Details
-
EMPTY
-
-
Constructor Details
-
GetOperationOptions
public GetOperationOptions()
-
-
Method Details
-
getRetrieve
-
setRetrieve
-
getRetrieve
-
createRetrieve
-
createRetrieve
Specifies whether to return specific items. It is used for optimizations. Some requests only needs a subset of items therefore fetching them all is a waste of resources. Other requests may need expensive data that are not normally returned by default.If no retrieve option is set in the entire options set then it means that the whole object with a default set of properties has to be returned. This is equivalent to specifying DEFAULT retrieve root option.
If there is at least one retrieve option in the set then the following rules apply:
- Items marked as INCLUDE will be returned.
- Any item marked as EXCLUDE may not be returned. (Note: Excluded items may still be returned if their retrieval is cheap.)
- Items marked as DEFAULT will be returned if they would also be returned without any options (by default).
- Items that are not marked (have no option or have null retrieve option) but their superitem is marked (have retrieve option) behave in the same way as superitem. E.g. if a superitem is marked as INCLUDE they will also be included in the result. This also applies transitively (e.g. superitem of superitem).
- If a superitem is marked as EXCLUDE and subitem is marked as INCLUDE then the behavior is undefined. Do not do this. Strange things may happen.
- For items that are not marked in any way and for which the superitem is also not marked the "I do not care" behavior is assumed. This means that they may be returned or they may be not. The implementation will return them if their retrieval is cheap but they will be most likely omitted from the result.
-
createRetrieveCollection
AscreateRetrieve()
but returns the whole collection. -
createDontRetrieve
Specifies whether to return specific items. It is used for optimizations. Some requests only needs a subset of items therefore fetching them all is a waste of resources. Other requests may need expensive data that are not normally returned by default.If no retrieve option is set in the entire options set then it means that the whole object with a default set of properties has to be returned. This is equivalent to specifying DEFAULT retrieve root option.
If there is at least one retrieve option in the set then the following rules apply:
- Items marked as INCLUDE will be returned.
- Any item marked as EXCLUDE may not be returned. (Note: Excluded items may still be returned if their retrieval is cheap.)
- Items marked as DEFAULT will be returned if they would also be returned without any options (by default).
- Items that are not marked (have no option or have null retrieve option) but their superitem is marked (have retrieve option) behave in the same way as superitem. E.g. if a superitem is marked as INCLUDE they will also be included in the result. This also applies transitively (e.g. superitem of superitem).
- If a superitem is marked as EXCLUDE and subitem is marked as INCLUDE then the behavior is undefined. Do not do this. Strange things may happen.
- For items that are not marked in any way and for which the superitem is also not marked the "I do not care" behavior is assumed. This means that they may be returned or they may be not. The implementation will return them if their retrieval is cheap but they will be most likely omitted from the result.
-
createRetrieve
Specifies whether to return specific items. It is used for optimizations. Some requests only needs a subset of items therefore fetching them all is a waste of resources. Other requests may need expensive data that are not normally returned by default.If no retrieve option is set in the entire options set then it means that the whole object with a default set of properties has to be returned. This is equivalent to specifying DEFAULT retrieve root option.
If there is at least one retrieve option in the set then the following rules apply:
- Items marked as INCLUDE will be returned.
- Any item marked as EXCLUDE may not be returned. (Note: Excluded items may still be returned if their retrieval is cheap.)
- Items marked as DEFAULT will be returned if they would also be returned without any options (by default).
- Items that are not marked (have no option or have null retrieve option) but their superitem is marked (have retrieve option) behave in the same way as superitem. E.g. if a superitem is marked as INCLUDE they will also be included in the result. This also applies transitively (e.g. superitem of superitem).
- If a superitem is marked as EXCLUDE and subitem is marked as INCLUDE then the behavior is undefined. Do not do this. Strange things may happen.
- For items that are not marked in any way and for which the superitem is also not marked the "I do not care" behavior is assumed. This means that they may be returned or they may be not. The implementation will return them if their retrieval is cheap but they will be most likely omitted from the result.
-
getResolve
-
setResolve
-
resolve
-
isResolve
-
createResolve
Resolve the object reference. This only makes sense with a (path-based) selector. -
getResolveNames
-
setResolveNames
-
resolveNames
-
isResolveNames
-
createResolveNames
Resolve the object reference names. -
getNoFetch
-
setNoFetch
-
noFetch
-
isNoFetch
-
isNoFetch
public static boolean isNoFetch(@Nullable @Nullable Collection<SelectorOptions<GetOperationOptions>> options) -
createNoFetch
No not fetch any information from external sources, e.g. do not fetch account data from resource, do not fetch resource schema, etc. Such operation returns only the data stored in midPoint repository. -
createNoFetchCollection
No not fetch any information from external sources, e.g. do not fetch account data from resource, do not fetch resource schema, etc. Such operation returns only the data stored in midPoint repository. -
createNoFetchReadOnlyCollection
-
getRaw
-
setRaw
-
raw
-
getRaw
Returns the `raw` flag, if present. Otherwise returns `null`. -
isRaw
Returns the value of the `raw` flag. The default is `false`. -
isRaw
public static boolean isRaw(@Nullable @Nullable Collection<SelectorOptions<GetOperationOptions>> options) -
createRaw
Avoid any smart processing of the data except for schema application. Do not synchronize the data, do not apply any expressions, etc. -
createRawCollection
Avoid any smart processing of the data except for schema application. Do not synchronize the data, do not apply any expressions, etc. -
getTolerateRawData
-
setTolerateRawData
-
tolerateRawData
-
isTolerateRawData
-
createTolerateRawData
Tolerate "raw" data in returned object. In some cases, raw data are tolerated by default (e.g. if raw=true and the object is ResourceType or ShadowType). But generally, toleration of raw data can be explicitly requested by setting this flag to TRUE. -
getDoNotDiscovery
-
setDoNotDiscovery
-
doNotDiscovery
-
isDoNotDiscovery
-
isDoNotDiscovery
-
createDoNotDiscovery
Force to get object from the resource even if some of the error occurred. If the any copy of the shadow is fetched, we can't delete this object from the gui, for example -
getRelationalValueSearchQuery
-
setRelationalValueSearchQuery
-
relationalValueSearchQuery
public GetOperationOptions relationalValueSearchQuery(RelationalValueSearchQuery relationalValueSearchQuery) -
createAllowNotFound
This flag indicated if the "object not found" error is critical for processing the original request. If it is not, we just ignore it and don't log it. In other cases, error in logs may lead to misleading information.. -
getAllowNotFound
-
setAllowNotFound
-
allowNotFound
-
isAllowNotFound
-
isAllowNotFound
-
createAllowNotFoundCollection
-
createReadOnly
Return read-only object. The returned object will be only read by the client. The client will not modify it. Immutable object is returned if it is possible. This option allows to turn on internal optimization (e.g. avoid cloning the values). It should be used at all times when the client do not plan to modify the returned object. -
createReadOnlyCollection
-
getReadOnly
-
setReadOnly
-
readOnly
-
isReadOnly
-
getPointInTimeType
-
setPointInTimeType
-
pointInTimeType
-
createPointInTimeType
Specifies the point in time for the returned data. This option controls whether fresh or cached data will be returned or whether future data projection will be returned. MidPoint usually deals with fresh data that describe situation at the current point in time. But the client code may want to get data from the cache that may be possibly stale. Or the client code may want a projection about the future state of the data (e.g. taking running asynchronous operation into consideration). If this option is not specified then the current point in time is the default if no staleness option is specified or if it is zero. If non-zero staleness option is specified then this option defaults to cached data. -
getPointInTimeType
-
getStaleness
-
setStaleness
-
staleness
-
createStaleness
Requirement how stale or fresh the retrieved data should be. It specifies maximum age of the value in milliseconds. The default value is zero, which means that a fresh value must always be returned. This means that caches that do not guarantee fresh value cannot be used. If non-zero value is specified then such caches may be used. In case that Long.MAX_VALUE is specified then the caches are always used and fresh value is never retrieved. -
createMaxStaleness
-
getStaleness
-
isMaxStaleness
-
getForceRefresh
-
setForceRefresh
-
forceRefresh
-
isForceRefresh
-
createForceRefresh
-
getForceRetry
-
setForceRetry
-
createForceRetry
-
isForceRetry
-
getDistinct
-
setDistinct
-
distinct
-
isDistinct
-
createDistinct
Should the results be made distinct. Not all providers support this option.BEWARE: - may bring a potentially huge performance penalty - may interfere with paging (!)
So please consider this option an EXPERIMENTAL, for now.
-
getAttachDiagData
-
setAttachDiagData
-
attachDiagData
-
isAttachDiagData
-
createAttachDiagData
Whether to attach diagnostics data to the returned object(s). -
getDefinitionProcessing
-
setDefinitionProcessing
-
definitionProcessing
-
getDefinitionProcessing
-
createDefinitionProcessing
TODO -
getDefinitionUpdate
-
setDefinitionUpdate
-
definitionUpdate
-
getDefinitionUpdate
-
getIterationMethod
-
setIterationMethod
-
iterationMethod
-
getIterationMethod
-
createIterationMethod
Whether to override default iteration method (in searchObjectsIterative) configured for particular DBMS. -
getExecutionPhase
-
setExecutionPhase
-
executionPhase
-
isExecutionPhase
-
createExecutionPhase
-
getErrorHandling
-
setErrorHandling
-
setErrorReportingMethod
public void setErrorReportingMethod(FetchErrorReportingMethodType method, PrismContext prismContext) -
errorHandling
-
getErrorHandling
-
getErrorReportingMethod
-
equals
-
hashCode
public int hashCode() -
clone
-
toString
-
shortDump
Description copied from interface:ShortDumpable
Show the content of the object intended for diagnostics. This method is supposed to append a compact, human-readable output in a single line. Unlike toString() method, there is no requirement to identify the actual class or type of the object. It is assumed that the class/type will be obvious from the context in which the output is used.- Specified by:
shortDump
in interfaceShortDumpable
- Parameters:
sb
- StringBuilder to which to a compact one-line content of the object intended for diagnostics by system administrator should be appended.
-
fromRestOptions
public static Collection<SelectorOptions<GetOperationOptions>> fromRestOptions(List<String> options, List<String> include, List<String> exclude, List<String> resolveNames, DefinitionProcessingOption definitionProcessing, PrismContext prismContext) -
toRestIncludeOption
public static List<String> toRestIncludeOption(Collection<SelectorOptions<GetOperationOptions>> options) -
fromRestOptions
public static GetOperationOptions fromRestOptions(List<String> options, DefinitionProcessingOption definitionProcessing) -
merge
@NotNull @SafeVarargs public static @NotNull Collection<SelectorOptions<GetOperationOptions>> merge(Collection<SelectorOptions<GetOperationOptions>>... parts) -
merge
-
disableReadOnly
@Experimental public static Collection<SelectorOptions<GetOperationOptions>> disableReadOnly(Collection<SelectorOptions<GetOperationOptions>> options) Disables readOnly option (while not modifying the original object). -
updateToNoFetch
public static Collection<SelectorOptions<GetOperationOptions>> updateToNoFetch(Collection<SelectorOptions<GetOperationOptions>> originalOptions) -
updateToRaw
public static Collection<SelectorOptions<GetOperationOptions>> updateToRaw(Collection<SelectorOptions<GetOperationOptions>> originalOptions, boolean value) -
updateToReadWrite
public static Collection<SelectorOptions<GetOperationOptions>> updateToReadWrite(Collection<SelectorOptions<GetOperationOptions>> originalOptions) -
updateToReadWriteSafe
public static Collection<SelectorOptions<GetOperationOptions>> updateToReadWriteSafe(Collection<SelectorOptions<GetOperationOptions>> originalOptions) AsupdateToReadWrite(Collection)
but does not modify the original options. -
updateToReadOnly
public static Collection<SelectorOptions<GetOperationOptions>> updateToReadOnly(Collection<SelectorOptions<GetOperationOptions>> originalOptions) -
updateToDistinct
public static Collection<SelectorOptions<GetOperationOptions>> updateToDistinct(Collection<SelectorOptions<GetOperationOptions>> originalOptions) -
updateRootOptions
public static Collection<SelectorOptions<GetOperationOptions>> updateRootOptions(Collection<SelectorOptions<GetOperationOptions>> options, Consumer<GetOperationOptions> updater) -
updateRootOptionsSafe
public static Collection<SelectorOptions<GetOperationOptions>> updateRootOptionsSafe(Collection<SelectorOptions<GetOperationOptions>> options, Predicate<GetOperationOptions> predicate, Consumer<GetOperationOptions> updater)
-