Tessa.Extensions - пространство имён

API для расширений.

Классы

AggregateFilterPolicy Политика, определяющих необходимость выполнения метода расширения посредством последовательного исполнения заданного списка политик IFilterPolicy. Если хотя бы одна указанная политика вернула false, то результатом метода будет false.
AssemblyRegistratorFinder Объект, выполняющий поиск регистраторов в заданном каталоге IAssemblyCatalog.
AssemblyRegistratorFinderBaseTImportingItem, TRegistrator, TMetadata, TAttribute Объект, выполняющий поиск регистраторов в заданном каталоге IAssemblyCatalog.
AsyncLazyResolvePolicy Политика получения экземпляров расширений по заданной отложенной ссылке с использованием асинхронности.
ContextFilterPolicyTContext, TPolicy Политика фильтрации расширений, использующая политику IContextPolicyTContext для того, чтобы не выполнять методы расширений, для которых выполняется условие для контекста TContext.
DefaultConstructorResolvePolicy Политика получения экземпляров расширений через вызов конструктора по умолчанию для их типов.
DefaultConstructorSingletonResolvePolicy Политика получения экземпляров расширений через вызов конструктора по умолчанию для их типов.
DefaultDelegateContextPolicy Политика, проверяющая условие для указанного контекста расширений, которое задаётся как делегат Func<IExtensionContext, bool>. Выполняется для любых типов расширений, даже если не была явно зарегистрирована.
DefaultExecuteStrategy Стратегия, определяющая способ фильтрации расширений перед выполнением посредством политики IFilterPolicy. Если указанная политика не зарегистрирована, то расширение выполняется обычным образом.
DefaultFilterStrategy Стратегия, определяющая контекст фильтрации расширений перед выполнением цепочки экземпляров расширений посредством политики IFilterPolicy. Если указанная политика не зарегистрирована, то контекст фильтрации устанавливается равным null.
DefaultOrganizeStrategy Стратегия, упорядочивающая выполняемые расширения в соответствии с политикой IOrderPolicy. Все расширения, зарегистрированные в контейнере с такой стратегией, обязаны содержать указанную политику.
DefaultResolveStrategy Стратегия, определяющая способ получения экземпляров расширений посредством политики IResolvePolicy. Все расширения, зарегистрированные в контейнере с такой стратегией, обязаны содержать указанную политику.
DefaultTearDownStrategy Стратегия, освобождающая ресурсы, занимаемые экземплярам расширений, для которых зарегистрирована политика ITearDownPolicy. Если указанная политика не зарегистрирована, то никаких действий не выполняется.
DelegateContextPolicyTContext Политика, проверяющая условие для указанного контекста расширений, которое задаётся как делегат Func<TContext, bool>.
DisposeTearDownPolicy Политика освобождения ресурсов, занятых экземплярами расширений, которые реализуют интерфейс IDisposable. Экземпляры расширений, не реализующие указанный интерфейс, игнорируются.
EmptyExtensionStrategy Стратегия расширений, не выполняющая действий. Её регистрация может использоваться для удаления зарегистрированной ранее стратегии на соответствующем этапе.
EmptyFilterPolicy Политика, определяющая отсутствие фильтра для выполнения метода расширения. Может использоваться для замещения существующей политики IFilterPolicy.
ExtensionAssembly Информация по сборке с расширениями.
ExtensionAssemblyInfo Содержит информацию по зарегистрированным сборкам расширений.
ExtensionContainer Контейнер расширений.
ExtensionExtensions Методы-расширения для пространства имён Tessa.Extensions.
ExtensionImportingItemTRegistrator, TMetadata Объект с информацией по импортированному типу регистратора расширений.
ExtensionPolicyContainer Контейнер политик IExtensionPolicy, ассоциированных с расширениями.
ExtensionResolveKey Ключ, используемый для идентификации экземпляра расширения.
ExtensionsConfigHelper Хэлперы для работы с конфигурационным файлом, описывающим сборки с плагинами.
ExtensionStrategyContext Контекст стратегии контейнера с расширениями IExtensionContainer.
FuncResolvePolicy Политика получения экземпляров расширений посредством заданной функции.
InstanceResolvePolicy Политика получения экземпляров расширений по заданной ссылке.
LazyResolvePolicy Политика получения экземпляров расширений по заданной отложенной ссылке.
OrderPolicy Политика упорядочивания расширений по этапам.
RegisterPoliciesStrategy Стратегия, выполняющая конфигурирование политик заданным способом для всех расширений.
RegistratorAttribute Атрибут, указывающий метаданные объекта регистратора, на основании которых будет выполняться регистрация расширений и зависимостей в Unity.
RegistratorBase Базовый класс для объектов регистраторов, реализующих интерфейс IRegistrator.
RegistratorHelper Вспомогательные средства для выполнения регистрации, используя найденные объекты.
RegistratorImportingItem Объект с информацией по импортированному типу регистратора расширений.
SingletonResolvePolicy Политика получения экземпляров расширений, являющихся синглтонами, через вызов конструктора по умолчанию для их типа.
UnityResolvePolicy Политика получения экземпляров расширений через заданный контейнер IUnityContainer.

Структуры

ExtensionBuildKey Ключ, используемый для идентификации типа расширения.
ExtensionExecutionKey Ключ, используемый для идентификации выполняемого метода.
ExtensionOrderKey Ключ, используемый для упорядочивания расширений по этапам.

Интерфейсы

IContextFilterPolicyTContext Политика фильтрации расширений, использующая политику IContextPolicyTContext для того, чтобы не выполнять методы расширений, для которых выполняется условие для контекста TContext.
IContextPolicyTContext Политика, проверяющая условие для указанного контекста расширений.
IDefaultDelegateContextPolicy Политика, проверяющая условие для указанного контекста расширений, которое задаётся как делегат Func<IExtensionContext, bool>. Выполняется для любых типов расширений, даже если не была явно зарегистрирована.
IDelegateContextPolicyTContext Политика, проверяющая условие для указанного контекста расширений, которое задаётся как делегат Func<TContext, bool>.
IExtension Расширение.
IExtensionAssemblyInfo Содержит информацию по зарегистрированным сборкам расширений.
IExtensionContainer Контейнер расширений.
IExtensionContext Контекст асинхронного метода, выполняющего расширения. Содержит свойство CancellationToken для асинхронной отмены.
IExtensionExecutor Объект, выполняющий расширения заданного типа и определяющий время жизни экземпляров расширений.
IExtensionOrderable Объект, предоставляющий информацию по порядку регистрации расширения.
IExtensionPolicy Политика, ассоциированная с расширениями.
IExtensionPolicyContainer Контейнер политик IExtensionPolicy, ассоциированных с расширениями.
IExtensionStrategy Стратегия контейнера с расширениями IExtensionContainer.
IExtensionStrategyContext Контекст стратегии контейнера с расширениями IExtensionContainer.
IExtensionTraceListener Объект, выполняющий отслеживание событий, происходящих при выполнении расширений.
IExtensionTypeRegistratorTExtension Объект, выполняющий регистрацию типа расширения в контейнере IExtensionContainer.
IFilterPolicy Политика, определяющая фильтр для выполнения метода расширения.
IOrderPolicy Политика упорядочивания расширений по этапам.
IRegistrator Интерфейс, реализуемый в объектах регистраторов. Помимо интерфейса также требуется указать атрибут RegistratorAttribute.
IRegistratorMetadata Метаинформация по атрибуту RegistratorAttribute.
IResolvePolicy Политика получения экземпляров расширений.
ITearDownPolicy Политика освобождения ресурсов, занятых экземплярами расширений.
ITraceableExtensionContext Контекст расширения, который отслеживается универсальными объектами IExtensionTraceListener, доступными в платформе.
IValidatableExtensionContext Контекст расширения, который содержит объект IValidationResultBuilder для записи сообщений, предупреждений и ошибок в процессе выполнения расширений.

Делегаты

ExtensionMethodAsyncTContext Метод, который можно асинхронно выполнить в расширении.
ExtensionMethodReferenceAsyncTExtension, TContext Делегат, возвращающий метод расширения, который можно асинхронно выполнить.
ExtensionPolicyConfigurator Делегат, выполняющий конфигурирование политик в заданном контейнере.
ExtensionTypeConfiguratorTExtension Делегат, выполняющий регистрацию типа расширения в контейнере.

Перечисления

ExceptionHandlingMode Режим обработки исключений, возникающий в методах расширений. Может быть изменён в т.ч. в методе NotifyException(IExtensionStrategyContext).
ExtensionStage Этап выполнения расширения в цепочке расширений.
ExtensionStrategyStage Этап выполнения стратегии для контейнера расширений IExtensionContainer.
RegistratorTag Флаговое перечисление с тегами регистратора, которые ограничивают область его использования.