Classes | |
| class | BelongsToAttribute |
| Attribute to denote that a property is a reference to another record (of specified id) of another type. The id is read from the property specified by IdProperty, and the type is taken from the local property. More... | |
| class | CascadeConfig |
| User configuration class for the Cascade library. More... | |
| class | CascadeConstants |
| Provides constant values used throughout the Cascade library. | |
| class | CascadeDataLayer |
| Methods to manipulate properties and association relationships between models. More... | |
| class | CascadeIdAttribute |
| Attribute used to mark the primary key property of a Cascade managed model. More... | |
| class | CascadeJsonSerialization |
| CascadeJsonSerialization handles JSON serialization and deserialization within the Cascade framework. Provides utilities to serialize and deserialize model objects while considering configurable options to ignore certain properties based on defined conditions. Implemented using System.Text.Json. More... | |
| class | CascadePaginator< Model > |
| The CascadePaginator class is an abstract base class designed to handle paginated retrieval of model data from a CascadeDataLayer. This class provides mechanisms to query, clear, and manage state associated with pagination such as the highest page queried and whether the last page has been fully loaded. More... | |
| class | CascadePropertyAttribute |
| Attribute used to explicitly specify the CascadePropertyKind of a property on a Cascade managed model. This overrides the default classification logic in FastReflection. More... | |
| class | CascadePropertyInfo |
| class | CascadeQueryOptions |
| Represents the options for a Cascade query including various settings and preferences that can influence the query execution and results. More... | |
| class | CascadeTypeUtils |
| Utility class providing methods to interact and retrieve information about types in the Cascade library, particularly for handling type conversions, checks, and operations related to model properties. | |
| class | CascadeUtils |
| A utility class providing general helper methods for the Cascade library. | |
| class | ClassInfo |
| class | ComparableExtensions |
| Provides extension methods for any type implementing IComparable<T> to simplify comparison logic. | |
| class | ConcurrentFileSystemClassCache< Model, IdType > |
| class | DateTimeJsonConverter |
| Default Json converter for DateTime and DateTime? typed properties. More... | |
| class | DictionaryJsonConverter |
| Custom JSON converter for handling serialization and deserialization of Dictionary<string, object?> using System.Text.Json. More... | |
| class | EnumerableAdapter |
| Static class providing utility methods for creating generic and non-generic sequences from a non-generic source using the EnumerableAdapter. | |
| class | EnumerableAdapter< T > |
| This class implements IEnumerable<T> to adapt a non-generic IEnumerable to work with a specified type T by casting the elements of the source enumeration to type T. More... | |
| class | FastFileClassCache< Model, IdType > |
| Provides a file based IModelClassCache which stores serialized model classes and their collections in directory-based file storage. It uses hashing and memory storage to speed up some reads and writes. More... | |
| class | FastReflection |
| class | FileBlobCache |
| This class is responsible for managing cached blobs within a local file system. It implements IBlobCache to store, fetch, and clear data. More... | |
| class | FileSystemClassCache< Model, IdType > |
| A simple file system-based cache for storing and retrieving instances of a model class with specified ID type. Implements IModelClassCache to fetch, store, and remove model instances and collections using JSON serialization. More... | |
| class | FNVHash |
| FNVHash provides methods for generating hash values using the Fowler-Noll-Vo hashing algorithm. It is chosen for its speed (10-100X SHA-256) and low collision rate. It supports generating hash values of varying bit lengths. FNV is not a cryptographic hash. More... | |
| class | FromBlobAttribute |
| Attribute marking a property as the destination and type for conversion from a blob of a given path. The converter is also specified. More... | |
| class | FromPropertyAttribute |
| Attribute to specify the source property and optional converter and arguments for property mapping, allowing customization of how a property gets populated. More... | |
| class | HasManyAttribute |
| Represents an attribute that specifies a one-to-many relationship. Used to mark a property intended to store a collection of child entities related to the local parent by a foreign key, identified by the specified property. More... | |
| class | HasOneAttribute |
| This attribute class is used within the Cascade library to indicate a 'has-one' relationship between entities. When applied to a property, it signifies that the property represents a single related entity and specifies the property name that holds the foreign key to the related entity. More... | |
| interface | IBlobCache |
| Defines a cache for storing and retrieving blob data in a Cascade data layer. More... | |
| interface | IBlobConverter |
| Interface for blob conversion within the Cascade library. Responsible for converting binary data to a specified type. More... | |
| interface | ICascadeCache |
| Interface for one cache layer. More... | |
| interface | ICascadeOrigin |
| Defines a Cascade Origin, with methods to process requests, manage authentication, and interact with model types in the Cascade framework. More... | |
| interface | ICascadePlatform |
| class | IdKeyDictionary< TValue > |
| class | ImmutableDictionaryJsonConverter |
| Custom JSON converter for serializing and deserializing ImmutableDictionary<string, object?> using System.Text.Json. More... | |
| interface | IModelClassCache |
| Interface for a cache to store model instances for a specified model class. More... | |
| interface | IModelClassOrigin |
| Interface defining the origin for a single class. More... | |
| interface | IPropertyConverter |
| Interface that defines a converter to convert a property value from one type to another. More... | |
| class | LogIf |
| class | MetaCache |
| The MetaCache class provides caching functionality for metadata associated with CascadeDataLayer. It enables loading, storage, retrieval, and clearing of metadata in a dictionary structure, maintaining a local cache and synchronizing changes with the CascadeDataLayer. As metadata is implemented using files, this cache can be used for fast UI updates by avoiding file access. More... | |
| class | MixedTypeComparer |
| class | ModelCache |
| Top level cache implementing ICascadeCache. This class manages an array of IModelClassCache, one per model class. The IModelClassCache implementations passed to the constructor can use any storage mechanism, and Cascade provides a few file and memory options. A IBlobCache can also be included to manage the storing, fetching, and clearing of binary blob data. More... | |
| class | ModelClassCache< Model, IdType > |
| A memory based cache for a given model type designed to store and retrieve instances of models and collections of ids with associated arrival timestamps. More... | |
| class | ModelConfig |
| class | MutationAttemptException |
| Custom exception thrown when a mutation attempt is made on an immutable property. More... | |
| class | OfflineUtils |
| Provides utilities for creating and managing offline instances of SuperModel objects. | |
| class | OpResponse |
| Represents the response of an operation request in the Cascade library. This class encapsulates information about the operation's result, its connection status, elapsed time, and more. More... | |
| class | RandomUtils |
| Utility class providing methods for generating random values. | |
| class | RequestOp |
| Represents a request operation in the Cascade library. It encapsulates all necessary details such as the type, verb, id, value, etc. More... | |
| class | SuperModel |
| A base class for Cascade models that handles property change notifications, property mutations, and proxy functionality. More... | |
Enumerations | |
| enum | FreshnessState { Fresh , Stale , Expired , Absent } |
| enum | CascadePropertyKind { None , Unknown , Internal , Id , Data , HasOne , HasMany , BelongsTo , FromBlob , FromProperty } |
| enum | RequestVerb { None , Create , Get , Update , Replace , Destroy , Query , Execute , GetCollection , BlobGet , BlobGetFilePath , BlobPut , BlobDestroy } |
| Enum representing various possible verbs for a request operation, such as Create, Get, Update, etc. | |