Summary
Extensions for dynamic data.
- Namespace
- DynamicData
- Base Types
-
- object
graph BT
Type-->Base0["object"]
Type["ObservableCacheEx"]
class Type type-node
Syntax
public static class ObservableCacheEx
Methods
Name | Value | Summary |
---|---|---|
Adapt |
IObservable |
Inject side effects into the stream using the specified adaptor.
static
|
Adapt |
IObservable |
Inject side effects into the stream using the specified sorted adaptor.
static
|
AddOrUpdate |
void |
Removes the specified key from the cache.
If the item is not contained in the cache then the operation does nothing.
static
|
AddOrUpdate |
void |
static
|
AddOrUpdate |
void |
Adds or updates the cache with the specified item.
static
|
AddOrUpdate |
void |
Adds or updates the cache with the specified item.
static
|
And |
IObservable |
Applied a logical And operator between the collections i.e items which are in all of the sources are included.
static
|
And |
IObservable |
Applied a logical And operator between the collections i.e items which are in all of the
sources are included.
static
|
And |
IObservable |
Dynamically apply a logical And operator between the items in the outer observable list.
Items which are in all of the sources are included in the result.
static
|
And |
IObservable |
Dynamically apply a logical And operator between the items in the outer observable list.
Items which are in all of the sources are included in the result.
static
|
And |
IObservable |
Dynamically apply a logical And operator between the items in the outer observable list.
Items which are in all of the sources are included in the result.
static
|
AsObservableCache |
IObservableCache |
Converts the source to a readonly observable cache.
static
|
AsObservableCache |
IObservableCache |
Converts the source to an read only observable cache.
static
|
AutoRefresh |
IObservable |
Automatically refresh downstream operators when properties change.
static
|
AutoRefresh |
IObservable |
Automatically refresh downstream operators when any properties change.
static
|
Auto |
IObservable |
Automatically refresh downstream operator. The refresh is triggered when the observable receives a notification.
static
|
Auto |
IObservable |
Automatically refresh downstream operator. The refresh is triggered when the observable receives a notification.
static
|
Batch |
IObservable |
Batches the updates for the specified time period.
static
|
BatchIf |
IObservable |
Batches the underlying updates if a pause signal (i.e when the buffer selector return true) has been received.
When a resume signal has been received the batched updates will be fired.
static
|
BatchIf |
IObservable |
Batches the underlying updates if a pause signal (i.e when the buffer selector return true) has been received.
When a resume signal has been received the batched updates will be fired.
static
|
BatchIf |
IObservable |
Batches the underlying updates if a pause signal (i.e when the buffer selector return true) has been received.
When a resume signal has been received the batched updates will be fired.
static
|
BatchIf |
IObservable |
Batches the underlying updates if a pause signal (i.e when the buffer selector return true) has been received.
When a resume signal has been received the batched updates will be fired.
static
|
BatchIf |
IObservable |
Batches the underlying updates if a pause signal (i.e when the buffer selector return true) has been received.
When a resume signal has been received the batched updates will be fired.
static
|
Bind |
IObservable |
Binds the results to the specified observable collection using the default update algorithm.
static
|
Bind |
IObservable |
Binds the results to the specified binding collection using the specified update algorithm.
static
|
Bind |
IObservable |
Binds the results to the specified readonly observable collection using the default update algorithm.
static
|
Bind |
IObservable |
Binds the results to the specified observable collection using the default update algorithm.
static
|
Bind |
IObservable |
Binds the results to the specified binding collection using the specified update algorithm.
static
|
Bind |
IObservable |
Binds the results to the specified readonly observable collection using the default update algorithm.
static
|
BufferInitial |
IObservable |
Buffers changes for an initial period only. After the period has elapsed, not further buffering occurs.
static
|
Cast |
IObservable |
Cast the object to the specified type.
Alas, I had to add the converter due to type inference issues.
static
|
ChangeKey |
IObservable |
Changes the primary key.
static
|
ChangeKey |
IObservable |
Changes the primary key.
static
|
Clear |
void |
Clears all items from the cache.
static
|
Clear |
void |
Clears all data.
static
|
Clear |
void |
Clears all data.
static
|
Clone |
IObservable |
Clones the changes into the specified collection.
static
|
Convert |
IObservable |
Convert the object using the specified conversion function.
This is a lighter equivalent of Transform and is designed to be used with non-disposable objects.
static
|
DeferUntilLoaded |
IObservable |
Defer the subscription until the stream has been inflated with data.
static
|
DeferUntilLoaded |
IObservable |
Defer the subscription until the stream has been inflated with data.
static
|
DisposeMany |
IObservable |
Disposes each item when no longer required.
Individual items are disposed when removed or replaced. All items
are disposed when the stream is disposed.
static
|
DistinctValues |
IObservable |
Selects distinct values from the source.
static
|
EditDiff |
void |
Loads the cache with the specified items in an optimised manner i.e. calculates the differences between the old and new items
in the list and amends only the differences.
static
|
EditDiff |
void |
Loads the cache with the specified items in an optimised manner i.e. calculates the differences between the old and new items
in the list and amends only the differences.
static
|
Evaluate |
void |
Signal observers to re-evaluate the all items.
static
|
Evaluate |
void |
Signal observers to re-evaluate the specified items.
static
|
Evaluate |
void |
Signal observers to re-evaluate the specified item.
static
|
Except |
IObservable |
Dynamically apply a logical Except operator between the collections
Items from the first collection in the outer list are included unless contained in any of the other lists.
static
|
Except |
IObservable |
Dynamically apply a logical Except operator between the collections
Items from the first collection in the outer list are included unless contained in any of the other lists.
static
|
Except |
IObservable |
Dynamically apply a logical Except operator between the collections
Items from the first collection in the outer list are included unless contained in any of the other lists.
static
|
Except |
IObservable |
Dynamically apply a logical Except operator between the items in the outer observable list.
Items which are in any of the sources are included in the result.
static
|
Except |
IObservable |
Dynamically apply a logical Except operator between the items in the outer observable list.
Items which are in any of the sources are included in the result.
static
|
ExpireAfter |
IObservable |
Automatically removes items from the stream after the time specified by
the timeSelector elapses. Return null if the item should never be removed.
static
|
ExpireAfter |
IObservable |
Automatically removes items from the stream after the time specified by
the timeSelector elapses. Return null if the item should never be removed.
static
|
ExpireAfter |
IObservable |
Automatically removes items from the stream on the next poll after the time specified by
the time selector elapses.
static
|
ExpireAfter |
IObservable |
Automatically removes items from the stream on the next poll after the time specified by
the time selector elapses.
static
|
ExpireAfter |
IObservable |
Automatically removes items from the cache after the time specified by
the time selector elapses.
static
|
ExpireAfter |
IObservable |
Automatically removes items from the cache after the time specified by
the time selector elapses.
static
|
ExpireAfter |
IObservable |
Automatically removes items from the cache after the time specified by
the time selector elapses.
static
|
Filter |
IObservable |
Filters the specified source.
static
|
Filter |
IObservable |
Creates a filtered stream which can be dynamically filtered.
static
|
Filter |
IObservable |
Creates a filtered stream which can be dynamically filtered.
static
|
Filter |
IObservable |
Creates a filtered stream which can be dynamically filtered.
static
|
FilterOnProperty |
IObservable |
Filters source on the specified property using the specified predicate.
The filter will automatically reapply when a property changes.
When there are likely to be a large number of property changes specify a throttle to improve performance.
static
|
FinallySafe |
IObservable |
Ensure that finally is always called. Thanks to Lee Campbell for this.
static
|
Flatten |
IObservable |
Flattens an update collection to it's individual items.
static
|
FlattenBufferResult |
IObservable |
Convert the result of a buffer operation to a single change set.
static
|
ForEachChange |
IObservable |
Provides a call back for each change.
static
|
FullJoin |
IObservable |
Joins the left and right observable data sources, taking any left or right values and matching them, provided that the left or the right has a value.
This is the equivalent of SQL full join.
static
|
FullJoin |
IObservable |
Joins the left and right observable data sources, taking any left or right values and matching them, provided that the left or the right has a value.
This is the equivalent of SQL full join.
static
|
FullJoinMany |
IObservable |
Groups the right data source and joins the resulting group to the left data source, matching these using the specified key selector. Results are included when the left or the right has a value.
This is the equivalent of SQL full join.
static
|
FullJoinMany |
IObservable |
Groups the right data source and joins the resulting group to the left data source, matching these using the specified key selector. Results are included when the left or the right has a value.
This is the equivalent of SQL full join.
static
|
Group |
IObservable |
Groups the source on the value returned by group selector factory.
static
|
Group |
IObservable |
Groups the source on the value returned by group selector factory.
A group is included for each item in the resulting group source.
static
|
Group |
IObservable |
Groups the source on the value returned by group selector factory.
static
|
GroupOnProperty |
IObservable |
Groups the source using the property specified by the property selector. Groups are re-applied when the property value changed.
When there are likely to be a large number of group property changes specify a throttle to improve performance.
static
|
Group |
IObservable |
Groups the source using the property specified by the property selector. Each update produces immutable grouping. Groups are re-applied when the property value changed.
When there are likely to be a large number of group property changes specify a throttle to improve performance.
static
|
Group |
IObservable |
Groups the source on the value returned by group selector factory. Each update produces immutable grouping.
static
|
Ignore |
IObservable |
Ignores updates when the update is the same reference.
static
|
IgnoreUpdateWhen |
IObservable |
Ignores the update when the condition is met.
The first parameter in the ignore function is the current value and the second parameter is the previous value.
static
|
IncludeUpdateWhen |
IObservable |
Only includes the update when the condition is met.
The first parameter in the ignore function is the current value and the second parameter is the previous value.
static
|
InnerJoin |
IObservable |
Joins the left and right observable data sources, taking values when both left and right values are present
This is the equivalent of SQL inner join.
static
|
InnerJoin |
IObservable |
Groups the right data source and joins the to the left and the right sources, taking values when both left and right values are present
This is the equivalent of SQL inner join.
static
|
InnerJoinMany |
IObservable |
Groups the right data source and joins the resulting group to the left data source, matching these using the specified key selector. Results are included when the left and right have matching values.
This is the equivalent of SQL inner join.
static
|
InnerJoinMany |
IObservable |
Groups the right data source and joins the resulting group to the left data source, matching these using the specified key selector. Results are included when the left and right have matching values.
This is the equivalent of SQL inner join.
static
|
InvokeEvaluate |
IObservable |
Invokes Refresh method for an object which implements IEvaluateAware.
static
|
LeftJoin |
IObservable |
Joins the left and right observable data sources, taking all left values and combining any matching right values.
static
|
LeftJoin |
IObservable |
Joins the left and right observable data sources, taking all left values and combining any matching right values.
static
|
LeftJoinMany |
IObservable |
Groups the right data source and joins the two sources matching them using the specified key selector, taking all left values and combining any matching right values.
This is the equivalent of SQL left join.
static
|
LeftJoinMany |
IObservable |
Groups the right data source and joins the two sources matching them using the specified key selector, taking all left values and combining any matching right values.
This is the equivalent of SQL left join.
static
|
LimitSizeTo |
IObservable |
Applies a size limiter to the number of records which can be included in the
underlying cache. When the size limit is reached the oldest items are removed.
static
|
LimitSizeTo |
IObservable |
Limits the number of records in the cache to the size specified. When the size is reached
the oldest items are removed from the cache.
static
|
MergeMany |
IObservable |
Dynamically merges the observable which is selected from each item in the stream, and un-merges the item
when it is no longer part of the stream.
static
|
MergeMany |
IObservable |
Dynamically merges the observable which is selected from each item in the stream, and un-merges the item
when it is no longer part of the stream.
static
|
MergeManyItems |
IObservable |
Dynamically merges the observable which is selected from each item in the stream, and un-merges the item
when it is no longer part of the stream.
static
|
MergeManyItems |
IObservable |
Dynamically merges the observable which is selected from each item in the stream, and un-merges the item
when it is no longer part of the stream.
static
|
MonitorStatus |
IObservable |
Monitors the status of a stream.
static
|
NotEmpty |
IObservable |
Suppresses updates which are empty.
static
|
OnItemAdded |
IObservable |
Callback for each item as and when it is being added to the stream.
static
|
OnItemRemoved |
IObservable |
Callback for each item as and when it is being removed from the stream.
static
|
OnItemUpdated |
IObservable |
Callback when an item has been updated eg. (current, previous)=>{}.
static
|
Or |
IObservable |
Apply a logical Or operator between the collections i.e items which are in any of the sources are included.
static
|
Or |
IObservable |
Apply a logical Or operator between the collections i.e items which are in any of the sources are included.
static
|
Or |
IObservable |
Dynamically apply a logical Or operator between the items in the outer observable list.
Items which are in any of the sources are included in the result.
static
|
Or |
IObservable |
Dynamically apply a logical Or operator between the items in the outer observable list.
Items which are in any of the sources are included in the result.
static
|
Or |
IObservable |
Dynamically apply a logical Or operator between the items in the outer observable list.
Items which are in any of the sources are included in the result.
static
|
Page |
IObservable |
Returns the page as specified by the pageRequests observable.
static
|
PopulateFrom |
IDisposable |
Populate a cache from an observable stream.
static
|
PopulateFrom |
IDisposable |
Populate a cache from an observable stream.
static
|
PopulateInto |
IDisposable |
Populates a source into the specified cache.
static
|
PopulateInto |
IDisposable |
Populates a source into the specified cache.
static
|
PopulateInto |
IDisposable |
Populates a source into the specified cache.
static
|
QueryWhenChanged |
IObservable |
The latest copy of the cache is exposed for querying after each modification to the underlying data.
static
|
QueryWhenChanged |
IObservable |
The latest copy of the cache is exposed for querying i) after each modification to the underlying data ii) on subscription.
static
|
QueryWhenChanged |
IObservable |
The latest copy of the cache is exposed for querying i) after each modification to the underlying data ii) upon subscription.
static
|
RefCount |
IObservable |
Cache equivalent to Publish().RefCount(). The source is cached so long as there is at least 1 subscriber.
static
|
Refresh |
void |
Signal observers to re-evaluate the all items.
static
|
Refresh |
void |
Signal observers to re-evaluate the specified items.
static
|
Refresh |
void |
Signal observers to re-evaluate the specified item.
static
|
Remove |
void |
Removes the specified keys from the cache.
Any keys not contained in the cache are ignored.
static
|
Remove |
void |
Removes the specified key from the cache.
If the item is not contained in the cache then the operation does nothing.
static
|
Remove |
void |
Removes the specified keys from the cache.
Any keys not contained in the cache are ignored.
static
|
Remove |
void |
Removes the specified items from the cache.
Any items not contained in the cache are ignored.
static
|
Remove |
void |
Removes the specified key from the cache.
If the item is not contained in the cache then the operation does nothing.
static
|
Remove |
void |
Removes the specified item from the cache.
If the item is not contained in the cache then the operation does nothing.
static
|
RemoveKey |
IObservable |
Removes the key which enables all observable list features of dynamic data.
static
|
RemoveKey |
void |
Removes the specified key from the cache.
If the item is not contained in the cache then the operation does nothing.
static
|
RemoveKeys |
void |
Removes the specified keys from the cache.
Any keys not contained in the cache are ignored.
static
|
RightJoin |
IObservable |
Joins the left and right observable data sources, taking all right values and combining any matching left values.
static
|
RightJoin |
IObservable |
Joins the left and right observable data sources, taking all right values and combining any matching left values.
static
|
RightJoinMany |
IObservable |
Groups the right data source and joins the two sources matching them using the specified key selector, , taking all right values and combining any matching left values.
This is the equivalent of SQL left join.
static
|
RightJoinMany |
IObservable |
Groups the right data source and joins the two sources matching them using the specified key selector,, taking all right values and combining any matching left values.
This is the equivalent of SQL left join.
static
|
SkipInitial |
IObservable |
Defer the subscription until loaded and skip initial change set.
static
|
Sort |
IObservable |
Sorts a sequence as, using the comparer observable to determine order.
static
|
Sort |
IObservable |
Sorts using the specified comparer.
Returns the underlying ChangeSet as as per the system conventions.
The resulting change set also exposes a sorted key value collection of of the underlying cached data.
static
|
Sort |
IObservable |
Sorts a sequence as, using the comparer observable to determine order.
static
|
Sort |
IObservable |
Sorts a sequence as, using the comparer observable to determine order.
static
|
StartWithEmpty |
IObservable |
Prepends an empty change set to the source.
static
|
StartWithEmpty |
IObservable |
Prepends an empty change set to the source.
static
|
StartWithEmpty |
IObservable |
Prepends an empty change set to the source.
static
|
StartWithEmpty |
IObservable |
Prepends an empty change set to the source.
static
|
StartWithEmpty |
IObservable |
Prepends an empty change set to the source.
static
|
StartWithEmpty |
IObservable |
Prepends an empty change set to the source.
static
|
StartWithEmpty |
IObservable |
Prepends an empty change set to the source.
static
|
StartWithItem |
IObservable |
The equivalent of rx StartsWith operator, but wraps the item in a change where reason is ChangeReason.Add.
static
|
StartWithItem |
IObservable |
The equivalent of rx StartWith operator, but wraps the item in a change where reason is ChangeReason.Add.
static
|
SubscribeMany |
IObservable |
Subscribes to each item when it is added to the stream and un-subscribes when it is removed. All items will be unsubscribed when the stream is disposed.
static
|
SubscribeMany |
IObservable |
Subscribes to each item when it is added to the stream and unsubscribes when it is removed. All items will be unsubscribed when the stream is disposed.
static
|
SuppressRefresh |
IObservable |
Suppress refresh notifications.
static
|
Switch |
IObservable |
Transforms an observable sequence of observable changes sets into an observable sequence
producing values only from the most recent observable sequence.
Each time a new inner observable sequence is received, unsubscribe from the
previous inner observable sequence and clear the existing result set.
static
|
Switch |
IObservable |
Transforms an observable sequence of observable caches into a single sequence
producing values only from the most recent observable sequence.
Each time a new inner observable sequence is received, unsubscribe from the
previous inner observable sequence and clear the existing result set.
static
|
ToCollection |
IObservable |
Converts the change set into a fully formed collection. Each change in the source results in a new collection.
static
|
To |
IObservable |
Converts the observable to an observable change set.
Change set observes observable change events.
static
|
To |
IObservable |
Converts the observable to an observable change set.
Change set observes observable change events.
static
|
Top |
IObservable |
Limits the size of the result set to the specified number, ordering by the comparer.
static
|
Top |
IObservable |
Limits the size of the result set to the specified number.
static
|
ToSortedCollection |
IObservable |
Converts the change set into a fully formed sorted collection. Each change in the source results in a new sorted collection.
static
|
ToSortedCollection |
IObservable |
Converts the change set into a fully formed sorted collection. Each change in the source results in a new sorted collection.
static
|
Transform |
IObservable |
Projects each update item to a new form using the specified transform function.
static
|
Transform |
IObservable |
Projects each update item to a new form using the specified transform function.
static
|
Transform |
IObservable |
Projects each update item to a new form using the specified transform function.
static
|
Transform |
IObservable |
Projects each update item to a new form using the specified transform function.
static
|
Transform |
IObservable |
Projects each update item to a new form using the specified transform function.
static
|
Transform |
IObservable |
Projects each update item to a new form using the specified transform function.
static
|
Transform |
IObservable |
Projects each update item to a new form using the specified transform function.
static
|
Transform |
IObservable |
Projects each update item to a new form using the specified transform function.
static
|
Transform |
IObservable |
Projects each update item to a new form using the specified transform function.
static
|
TransformAsync |
IObservable |
Projects each update item to a new form using the specified transform function.
static
|
TransformAsync |
IObservable |
Projects each update item to a new form using the specified transform function.
static
|
TransformAsync |
IObservable |
Projects each update item to a new form using the specified transform function.
static
|
TransformMany |
IObservable |
Equivalent to a select many transform. To work, the key must individually identify each child.
static
|
TransformMany |
IObservable |
Flatten the nested observable collection, and subsequently observe observable collection changes.
static
|
TransformMany |
IObservable |
Flatten the nested observable collection, and subsequently observe observable collection changes.
static
|
TransformSafe |
IObservable |
Projects each update item to a new form using the specified transform function,
providing an error handling action to safely handle transform errors without killing the stream.
static
|
TransformSafe |
IObservable |
Projects each update item to a new form using the specified transform function,
providing an error handling action to safely handle transform errors without killing the stream.
static
|
TransformSafe |
IObservable |
Projects each update item to a new form using the specified transform function,
providing an error handling action to safely handle transform errors without killing the stream.
static
|
TransformSafe |
IObservable |
Projects each update item to a new form using the specified transform function,
providing an error handling action to safely handle transform errors without killing the stream.
static
|
TransformSafe |
IObservable |
Projects each update item to a new form using the specified transform function,
providing an error handling action to safely handle transform errors without killing the stream.
static
|
TransformSafe |
IObservable |
Projects each update item to a new form using the specified transform function,
providing an error handling action to safely handle transform errors without killing the stream.
static
|
TransformSafeAsync |
IObservable |
Projects each update item to a new form using the specified transform function.
static
|
TransformSafeAsync |
IObservable |
Projects each update item to a new form using the specified transform function.
static
|
TransformSafeAsync |
IObservable |
Projects each update item to a new form using the specified transform function.
static
|
TransformToTree |
IObservable |
Transforms the object to a fully recursive tree, create a hierarchy based on the pivot function.
static
|
Treat |
IObservable |
Converts moves changes to remove + add.
static
|
TrueForAll |
IObservable |
Produces a boolean observable indicating whether the latest resulting value from all of the specified observables matches
the equality condition. The observable is re-evaluated whenever
i) The cache changes
or ii) The inner observable changes.
static
|
TrueForAll |
IObservable |
Produces a boolean observable indicating whether the latest resulting value from all of the specified observables matches
the equality condition. The observable is re-evaluated whenever
i) The cache changes
or ii) The inner observable changes.
static
|
TrueForAny |
IObservable |
Produces a boolean observable indicating whether the resulting value of whether any of the specified observables matches
the equality condition. The observable is re-evaluated whenever
i) The cache changes.
or ii) The inner observable changes.
static
|
TrueForAny |
IObservable |
Produces a boolean observable indicating whether the resulting value of whether any of the specified observables matches
the equality condition. The observable is re-evaluated whenever
i) The cache changes.
or ii) The inner observable changes.
static
|
UpdateIndex |
IObservable |
Updates the index for an object which implements IIndexAware.
static
|
Virtualise |
IObservable |
Virtualises the underlying data from the specified source.
static
|
Watch |
IObservable |
Returns an observable of any updates which match the specified key, proceeded with the initial cache state.
static
|
WatchValue |
IObservable |
Watches updates for a single value matching the specified key.
static
|
WatchValue |
IObservable |
Watches updates for a single value matching the specified key.
static
|
When |
IObservable |
Watches each item in the collection and notifies when any of them has changed.
static
|
WhenPropertyChanged |
IObservable |
Watches each item in the collection and notifies when any of them has changed.
static
|
WhenValueChanged |
IObservable |
Watches each item in the collection and notifies when any of them has changed.
static
|
WhereReasonsAre |
IObservable |
Includes changes for the specified reasons only.
static
|
WhereReasonsAreNot |
IObservable |
Excludes updates for the specified reasons.
static
|
Xor |
IObservable |
Apply a logical Xor operator between the collections.
Items which are only in one of the sources are included in the result.
static
|
Xor |
IObservable |
Apply a logical Xor operator between the collections.
Items which are only in one of the sources are included in the result.
static
|
Xor |
IObservable |
Dynamically apply a logical Xor operator between the items in the outer observable list.
Items which are only in one of the sources are included in the result.
static
|
Xor |
IObservable |
Dynamically apply a logical Xor operator between the items in the outer observable list.
Items which are in any of the sources are included in the result.
static
|
Xor |
IObservable |
Dynamically apply a logical Xor operator between the items in the outer observable list.
Items which are in any of the sources are included in the result.
static
|
Extension Methods
Name | Value | Summary |
---|---|---|
Invoke |
object |
This is a thing I lifted from Prism.
|