Configurações do Cloud Service cloud-service-configurations
As configurações são projetadas para fornecer a lógica e a estrutura para armazenar configurações de serviço.
É possível estender as instâncias existentes para criar suas próprias configurações.
Conceitos concepts
Os princípios usados no desenvolvimento das configurações foram baseados nos seguintes conceitos:
- Os serviços/adaptadores são usados para recuperar as configurações.
- As configurações (por exemplo, propriedades/parágrafos) são herdadas dos pais.
- Referenciado a partir de nós do Analytics por caminho.
- Facilmente extensível.
- Tem flexibilidade para atender a configurações mais complexas, como Adobe Analytics.
- Suporte para dependências (por exemplo, Adobe Analytics os plug-ins precisam de um Adobe Analytics configuração).
Estrutura structure
O caminho base das configurações é:
/etc/cloudservices
.
Para cada tipo de configuração, um modelo e um componente serão fornecidos.Isso possibilita ter modelos de configuração que podem atender à maioria das necessidades após serem personalizados.
Para fornecer uma configuração para novos serviços, você precisa:
-
criar uma página de serviço em
/etc/cloudservices
-
nesta rubrica:
- um template de configuração
- um componente de configuração
O modelo e o componente devem herdar o sling:resourceSuperType
do template base:
cq/cloudserviceconfigs/templates/configpage
ou componente base, respectivamente
cq/cloudserviceconfigs/components/configpage
O provedor de serviços também deve fornecer a página de serviço:
/etc/cloudservices/<service-name>
Modelo template
Seu modelo estenderá o modelo base:
cq/cloudserviceconfigs/templates/configpage
e defina uma resourceType
que aponta para o componente personalizado.
/libs/cq/analytics/templates/sitecatalyst
sling:resourceSuperType = cq/cloudserviceconfigs/templates/configpage
allowedChildren = /libs/cq/analytics/templates/sitecatalyst
allowedPaths = /etc/cloudservices/analytics/*, /etc/cloudservices/analytics/.*
componentReference = cq/analytics/components/sitecatalyst
jcr:content/
cq:designPath = /etc/designs/cloudservices
sling:resourceType = cq/analytics/components/sitecatalystpage
/libs/cq/analytics/templates/generictracker
sling:resourceSuperType = cq/cloudservices/templates/configpage
allowedChildren = /libs/cq/analytics/templates/generictracker
allowedPaths = /etc/cloudservices/analytics/*, /etc/cloudservices/analytics/.*
jcr:content/
cq:designPath = /etc/designs/cloudservices
sling:resourceType = cq/analytics/components/generictrackerpage
Componentes components
Seu componente deve estender o componente base:
cq/cloudserviceconfigs/templates/configpage
/libs/cq/analytics/components/sitecatalystpage
/libs/cq/analytics/components/generictrackerpage
Após configurar o modelo e o componente, é possível adicionar a configuração adicionando subpáginas em:
/etc/cloudservices/<service-name>
Modelo de conteúdo content-model
O modelo de conteúdo é armazenado como cq:Page
em:
/etc/cloudservices/<service-name>(/*)
/etc/cloudservices
/etc/cloudservices/service-name
/etc/cloudservices/service-name/config
/etc/cloudservices/service-name/config/inherited-config
As configurações são armazenadas no subnó jcr:content
.
- As propriedades fixas, definidas em uma caixa de diálogo, devem ser armazenadas no
jcr:node
diretamente. - Elementos dinâmicos (usando
parsys
ouiparsys
) use um subnó para armazenar os dados do componente.
/etc/cloudservices/service/config/jcr:content as nt:unstructured
propertyname
*
par/component/ as cq:Component
propertyname
*
API api
Para obter a documentação de referência sobre a API, consulte com.day.cq.wcm.webservicesupport.
Integração de AEM aem-integration
Os serviços disponíveis estão listados na variável Cloud Services da guia Propriedades da página de qualquer página herdada de foundation/components/page
ou wcm/mobile/components/page
).
A guia também fornece:
- um link para o local onde você pode ativar o serviço
- escolha uma configuração (subnó do serviço) de um campo de caminho
Criptografia de senha password-encryption
Ao armazenar credenciais do usuário para o serviço, todas as senhas devem ser criptografadas.
Para isso, adicione um campo de formulário oculto. Este campo deve ter a anotação @Encrypted
no nome da propriedade; ou seja, para o password
o nome seria escrito como:
password@Encrypted
A propriedade será automaticamente criptografada (usando o CryptoSupport
pela EncryptionPostProcessor
.
[SlingPostServlet](https://sling.apache.org/site/manipulating-content-the-slingpostservlet-servletspost.html)
anotações.EcryptionPostProcessor
somente criptografia POST
pedidos apresentados /etc/cloudservices
.Propriedades adicionais para a página de serviço jcr:nós de conteúdo additional-properties-for-service-page-jcr-content-nodes
Casos de uso use-cases
Esses serviços são fornecidos por padrão:
- Trechos do rastreador (Google, WebTrends etc.)
- Adobe Analytics
- Test&Target
- Dynamic Media