Tessa.Extensions - пространство имён |
| Класс | Описание | |
|---|---|---|
| AggregateExtensionStrategy |
Стратегия, последователь агрегирующая выполнение других стратегий.
Все методы объекта являются потокобезопасными.
| |
| AggregateFilterPolicy |
Политика, определяющих необходимость выполнения метода расширения посредством последовательного
исполнения заданного списка политик IFilterPolicy.
Если хотя бы одна указанная политика вернула false, то результатом метода будет false.
| |
| AssemblyRegistratorFinder |
Выполняет поиск типов объектов IRegistrator в заданном каталоге IAssemblyCatalog.
| |
| AsyncLazyResolvePolicy |
Политика получения экземпляров расширений по заданной отложенной ссылке с использованием асинхронности.
| |
| DefaultConstructorResolvePolicy |
Политика получения экземпляров расширений через вызов конструктора по умолчанию для их типов.
| |
| DefaultConstructorSingletonResolvePolicy |
Политика получения экземпляров расширений через вызов конструктора по умолчанию для их типов.
Политика зарегистрирована по умолчанию для всех типов расширений.
Объект является синглтоном и доступен посредством свойства Instance.
Для более оптимального создания экземпляров расширений используется объект DefaultConstructorResolvePolicy,
который не является синглтоном и может содержать состояние.
| |
| DefaultExecuteStrategy |
Стратегия, определяющая способ фильтрации расширений перед выполнением посредством политики
IFilterPolicy. Если указанная политика не зарегистрирована, то расширение выполняется обычным образом.
Все методы объекта являются потокобезопасными.
| |
| DefaultExtensionTraceListener |
Объект, выполняющий отслеживание событий, происходящих при выполнении расширений.
События записываются в ValidationResult как информационные сообщения.
| |
| DefaultFilterStrategy |
Стратегия, определяющая контекст фильтрации расширений перед выполнением цепочки экземпляров расширений посредством политики
IFilterPolicy. Если указанная политика не зарегистрирована, то контекст фильтрации устанавливается равным null.
Все методы объекта являются потокобезопасными.
| |
| DefaultRegulateStrategy |
Стратегия, упорядочивающая выполняемые расширения в соответствии с политикой
IOrderPolicy. Все расширения, зарегистрированные в контейнере с такой стратегией,
обязаны содержать указанную политику.
Все методы объекта являются потокобезопасными.
| |
| DefaultResolveStrategy |
Стратегия, определяющая способ получения экземпляров расширений посредством политики
IResolvePolicy. Все расширения, зарегистрированные в контейнере с такой стратегией,
обязаны содержать указанную политику.
Все методы объекта являются потокобезопасными.
| |
| DefaultTearDownStrategy |
Стратегия, освобождающая ресурсы, занимаемые экземплярам расширений,
для которых зарегистрирована политика ITearDownPolicy.
Если указанная политика не зарегистрирована, то никаких действий не выполняется.
Все методы объекта являются потокобезопасными.
| |
| DisposeTearDownPolicy |
Политика освобождения ресурсов, занятых экземплярами расширений,
которые реализуют интерфейс IDisposable.
Экземпляры расширений, не реализующие указанный интерфейс, игнорируются.
| |
| EmptyExtensionStrategy |
Стратегия расширений, не выполняющая действий. Её регистрация может использоваться
для удаления зарегистрированной ранее стратегии на соответствующем этапе.
Все методы объекта являются потокобезопасными.
| |
| EmptyFilterPolicy |
Политика, определяющая отсутствие фильтра для выполнения метода расширения.
Может использоваться для замещения существующей политики IFilterPolicy.
| |
| ExtensionAssembly |
Информация по сборке с расширениями.
| |
| ExtensionAssemblyInfo |
Содержит информацию по зарегистрированным сборкам расширений.
| |
| ExtensionBuildKey |
Ключ, используемый для идентификации типа расширения.
| |
| ExtensionContainer |
Контейнер расширений.
Все методы объекта являются потокобезопасными.
| |
| ExtensionContainerNames |
Дополнительные имена контейнеров расширений, которые регистрируются в контейнере Unity.
| |
| ExtensionExtensions |
Методы-расширения для пространства имён Tessa.Extensions.
| |
| ExtensionPolicyContainer |
Контейнер политик IExtensionPolicy, ассоциированных с расширениями.
Все методы объекта являются потокобезопасными.
| |
| ExtensionResolveKey |
Ключ, используемый для идентификации экземпляра расширения.
| |
| ExtensionsConfigHelper |
Хэлперы для работы с конфигурационным файлом, описывающим сборки с плагинами.
| |
| ExtensionStrategyContext |
Контекст стратегии контейнера с расширениями IExtensionContainer.
| |
| ExtensionTraceListener |
Базовый класс для объекта, выполняющего отслеживание событий, происходящих при выполнении расширений.
| |
| ExtensionTraceListenerHelper |
Вспомогательные методы для трассировки расширений.
| |
| FuncResolvePolicy |
Политика получения экземпляров расширений посредством заданной функции.
| |
| InstanceResolvePolicy |
Политика получения экземпляров расширений по заданной ссылке.
| |
| LazyResolvePolicy |
Политика получения экземпляров расширений по заданной отложенной ссылке.
| |
| OrderPolicy |
Политика упорядочивания расширений по этапам.
| |
| RegisterPoliciesStrategy |
Стратегия, выполняющая конфигурирование политик заданным способом для всех расширений.
Все методы объекта являются потокобезопасными.
| |
| RegistratorAttribute |
Атрибут, указывающий метаданные объекта регистратора,
на основании которых будет выполняться регистрация расширений и зависимостей в Unity.
| |
| RegistratorBase |
Базовый класс для объектов регистраторов, реализующих интерфейс IRegistrator.
| |
| RegistratorHelper |
Вспомогательные средства для выполнения регистрации, используя найденные объекты.
| |
| RegistratorImportingItem |
Объект с информацией по импортированному типу регистратора расширений IRegistrator.
| |
| RegistratorMetadata |
Метаинформация по атрибуту RegistratorAttribute, представленная в сериализуемой форме.
| |
| SingletonResolvePolicy |
Политика получения экземпляров расширений, являющихся синглтонами,
через вызов конструктора по умолчанию для их типа.
| |
| UnityResolvePolicy |
Политика получения экземпляров расширений через заданный контейнер IUnityContainer.
|
| Структура | Описание | |
|---|---|---|
| ExtensionExecutionKey |
Ключ, используемый для идентификации выполняемого метода.
| |
| ExtensionOrderKey |
Ключ, используемый для упорядочивания расширений по этапам.
|
| Интерфейс | Описание | |
|---|---|---|
| IExtension |
Расширение. Может дополнительно реализовывать интерфейс IAsyncInitializable
для асинхронной инициализации после вызова конструктора.
| |
| IExtensionAssemblyInfo |
Содержит информацию по зарегистрированным сборкам расширений.
| |
| IExtensionContainer |
Контейнер расширений.
Все методы объекта являются потокобезопасными.
| |
| IExtensionContext |
Контекст асинхронного метода, выполняющего расширения.
Содержит свойство CancellationToken для асинхронной отмены.
| |
| IExtensionExecutorTExtension |
Объект, выполняющий расширения заданного типа и определяющий
время жизни экземпляров расширений.
Все методы объекта являются потокобезопасными.
| |
| IExtensionPolicy |
Политика, ассоциированная с расширениями.
| |
| IExtensionPolicyContainer |
Контейнер политик IExtensionPolicy, ассоциированных с расширениями.
Все методы объекта являются потокобезопасными.
| |
| IExtensionStrategy |
Стратегия контейнера с расширениями IExtensionContainer.
Все методы объекта являются потокобезопасными.
| |
| IExtensionStrategyContext |
Контекст стратегии контейнера с расширениями IExtensionContainer.
| |
| IExtensionTraceListener |
Объект, выполняющий отслеживание событий, происходящих при выполнении расширений.
| |
| IExtensionTypeRegistratorTExtension |
Объект, выполняющий регистрацию типа расширения в контейнере IExtensionContainer.
Все методы объекта являются потокобезопасными.
| |
| IFilterPolicy |
Политика, определяющая фильтр для выполнения метода расширения.
| |
| IOrderPolicy |
Политика упорядочивания расширений по этапам.
| |
| IRegistrator |
Интерфейс, реализуемый в объектах регистраторов.
Помимо интерфейса также требуется указать атрибут RegistratorAttribute.
| |
| IRegistratorMetadata |
Метаинформация по атрибуту RegistratorAttribute.
| |
| IResolvePolicy |
Политика получения экземпляров расширений.
| |
| ITearDownPolicy |
Политика освобождения ресурсов, занятых экземплярами расширений.
| |
| ITraceableExtensionContext |
Контекст расширения, который отслеживается универсальными объектами IExtensionTraceListener,
доступными в платформе.
|
| Делегат | Описание | |
|---|---|---|
| ExtensionMethodAsyncTContext |
Метод, который можно асинхронно выполнить в расширении.
| |
| ExtensionMethodReferenceAsyncTExtension, TContext |
Делегат, возвращающий метод расширения, который можно асинхронно выполнить.
| |
| ExtensionPolicyConfigurator |
Делегат, выполняющий конфигурирование политик в заданном контейнере.
| |
| ExtensionTypeConfiguratorTExtension |
Делегат, выполняющий регистрацию типа расширения в контейнере.
|
| Перечисление | Описание | |
|---|---|---|
| ExceptionHandlingMode |
Режим обработки исключений, возникающий в методах расширений.
Может быть изменён в т.ч. в методе NotifyException(IExtensionStrategyContext).
| |
| ExtensionStage |
Этап выполнения расширения в цепочке расширений.
| |
| ExtensionStrategyStage |
Этап выполнения стратегии для контейнера расширений IExtensionContainer.
| |
| ExtensionTraceListenerType |
Тип объекта DefaultExtensionTraceListener,
выполняющего отслеживание событий, происходящих при выполнении расширений карточек.
| |
| RegistratorTag |
Флаговое перечисление с тегами регистратора, которые ограничивают область его использования.
|