Tapestry/Сервисы

Материал из Викиучебника — открытых книг для открытого мира

Сервис-ориентированный подход (англ. SOA, service-oriented architecture) — модульный подход к разработке программного обеспечения, основанный на использовании сервисов (служб) со стандартизированными интерфейсами к которым можно получить доступ при необходимости. Сервисы состоят из двух основных частей: интерфейса и реализации[1].

Сервисы Tapestry по алфавиту

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


A[править]

[Вверх]


Имя сервиса Описание Методы и
свойства
Ссылка
Advice сервис отслеживает работу других сервисов advise() [1]
Alias Этот сервис предоставляет ObjectProvider который вписывается в цепочку команд MasterObjectProvider и разрешает проблему неоднозначности инъекций в зависимости от типа. getObjectProvider() [2]
AliasManager Надстройка над AliasContributions getAliasesForMode() [3]
ApplicationGlobals Хранит глобальную информацию о приложении и его окружении getContext()
getServletContext()
storeContext()
storeServletContext()
[4]
ApplicationInitializer Интерфейс для инициализации Tapestry для приложения initializeApplication() [5]
ApplicationInitializerFilter Интерфейс-фильтр для ApplicationInitializer initializeApplication() [6]
ApplicationStateCreator Используется сервисами ApplicationStateManager и ApplicationStatePersistenceStrategy для создания объектов состояний приложения по требованию. create() [7]
ApplicationStateManager Может управлять состояниями объектов сессий, постоянных (persist) объектов, но не привязаны к конкретной странице или компоненту.

exists()
get()
getIfExists()
set()

[8]
ApplicationStatePersistenceStrategy Используется сервисом ApplicationStateManager для управления объектами состояния сессии (SSO — англ. Session State Object) exists()

get()
set()

[9]
ApplicationStatePersistenceStrategySource Используется для обеспечения доступа к ApplicationStatePersistenceStrategySource через логическое имя в контексте сессий. get() [10]
AssetFactory Используется AssetSource для создания новых ресурсов (Assets) если необходимо createAsset()

getRootResource()

[11]
AssetPathConverter Приводит путь ресурса (asset) к определенному формату

convertAssetPath()
isInvariant()

[12]
AssetSource Используется для поиска или создания ресурса (asset) по заданному пути

getAsset()
getClasspathAsset()
getClasspathAsset()
getContextAsset()
resourceForPath()

[13]

B[править]

[Вверх]


Имя сервиса Описание Методы и
свойства
Ссылка
BaseURLSource Используется при переключении между нормальным (HTTP) и безопасным (HTTPS) режимами. getBaseURL() [14]
BeanBlockOverrideSource Используется для переопределения BeanBlockSource для определенного типа данных getDisplayBlock()

getEditBlock()
hasDisplayBlock()

[15]
BeanBlockSource Код блоков используется для отображения свойств bean-элементов (например компонентGrid), или для изменения свойств bean-элементов (используется в компоненте BeanEditForm)

getDisplayBlock() getEditBlock() hasDisplayBlock()

[16]
BeanEditContext Определяет контекст для редактирования с помощью BeanEditor getBeanClass() [17]
BeanModelSource Используется компонентами для создания стандартной модели BeanModel для определенного bean-класса

createDisplayModel()
createEditModel()

[18]
BindingFactory Создает привязку (bind) определенного типа. newBinding() [19]
BindingSource Используется назначения привязки для параметров компонентов

newBinding()
newBinding()

[20]

C[править]

[Вверх]

Имя сервиса Описание Методы и
свойства
Ссылка
ClasspathAssetAliasManager Используется как часть поддержки ресурсов (Asset) с адресом типа classpath, для приведения путей ресурсов к URL, который может быть использован клиентом.

toClientURL()
toResourcePath()

[21]
ClassTransformation Содержит информацию специфичную для классов, используется при преобразовании неопределенного компонентного класса в выполняемые компонентный класс [22]
ClientBehaviorSupport Собирает информацию о используемой зоне для эффективного использования инициализации объектов на стороне клиента.

addFormFragment()
addFormInjector()
addValidation()
addZone()
linkZone()

[23]
ClientDataEncoder Сервис используется, когда компоненту или сервису необходимо закодировать некоторое количество данных на стороне клиента в виде строки

createSink()
decodeClientData()
decodeEncodedClientData()

[24]
ClientDataSink Позволяет кодировать в строку (string) бинарные данные объектов.

getClientData()
getEncodedClientData()
getObjectOutputStream()

[25]
ClientInfrastructure Инфраструктура клиента состоит из библиотек JavaScript и файлов стилей CSS

getJavascriptStack()
getStylesheetStack()

[26]
ComponentClassResolver Определяет имена классов по именам страниц и компонентов

canonicalizePageName()
getPageNames()
isPageName()
resolveComponentTypeToClassName()
resolveMixinTypeToClassName()
resolvePageClassNameToPageName()
resolvePageNameToClassName()

[27]
ComponentClassTransformWorker Интерфейс для множества объектов, которые могут выполнять преобразования компонентов класса. transform() [28]
ComponentDefaultProvider Сервис, который может быть внедрен (inject) в компонент для предоставления общих значений по умолчанию для различных типов параметров

defaultBinding()
defaultLabel()
defaultTranslatorBinding()
defaultValidatorBinding()
defaultValueEncoder()

[29]
ComponentEventLinkEncoder Отвечает за создание ссылок на запрос создания (render) страниц и ссылок на запросы событий компонентов. Также отвечает за преобразование (parsing) входящих путей для идентификации запросов на создание(render) и запросов событий компонентов.

createComponentEventLink()
createPageRenderLink()
decodeComponentEventRequest()
decodePageRenderRequest()

[30]
ComponentEventRequestFilter Интерфейс-фильтр для ComponentEventRequestHandler. handle() [31]
ComponentEventRequestHandler Интерфейс-обработчик для запросов события компонента. handle() [32]
ComponentEventResultProcessor Ответственный за обработку возвращаемого значения от компонентного метода обработчика события (event handler) processResultValue() [33]
ComponentMethodAdvice Объект, который получает контроль над методом компонента (который получает «совет» — англ. advice) advise() [34]
ComponentMethodInvocation Содержит параметы, обработчики исключений и результаты работы методов, позволяющие ComponentMethodAdvice обрабатывать вызовы [35]
ComponentRequestFilter Интерфейс-фильтр для ComponentRequestHandler.

handleComponentEvent()
handlePageRender()

[36]
ComponentRequestHandler Надстройка над ComponentEventRequestHandler и PageRenderRequestHandler, которая позволяет упростить фильтры, которые обрабатываю оба вида запросов handleComponentEvent()

handlePageRender()

[37]
ComponentSource Используется классами, которым необходимо получить компонент по его полному идентификатору или страницу по ее логическому имени или главный компонентный класс. getComponent()

getPage()

[38]
Context Альтернатива ServletContext, которая служит мостом между Servlet API и Portlet API getAttribute()

getAttributeNames()
getInitParameter()
getMimeType()
getRealFile()
getResource()
getResourcePaths()

[39]
ContextPathEncoder Сервис предоставляющий методы необходимые для кодирования и декодирования контекстных событий, в и из URL decodePath()

encodeIntoPath()

[40]
ContextValueEncoder Используется для преобразования значений, используемых в контексте событий клиенту в строковой форме и обратно. toClient()

toValue()

[41]
Cookies Используется другими сервисами для определения значений cookie для данного запроса или для записи значений в cookie в рамках запроса [42]

D[править]

[Вверх]

Имя сервиса Описание Методы и
свойства
Ссылка
DataTypeAnalyzer Используется BeanModelSource для определения типа данных, связанных с конкретным свойством (представленных в виде PropertyAdapter) identifyDataType() [43]
Dispatcher Диспетчер отвечает за распознавание входящего запроса dispatch() [44]

E[править]

[Вверх]

Имя сервиса Описание Методы и
свойства
Ссылка
Environment Предоставляет доступ к переменным окружения, обычно используется компонентами clear()

getAccess() peek() peekRequired() pop() push()

[45]

Другие[править]

[Вверх]

Имя сервиса Описание Методы и
свойства
Ссылка
Tapestry IoC обращение контроля [46]

Переопределение сервисов [2][править]

Переопределение (Override):

public static void contributeServiceOverride(MappedConfiguration<Class,Object> configuration)
  {
    configuration.add(SomeServiceType.class, new SomeServiceType() { . . . });
  }

Декорирование (decorate):

public SomeServiceType decorateSomeServiceType(SomeServiceType original)
  {
    return new SomeServiceType() { . . . };
  }

Примечания[править]

Ссылки[править]