SRP et UGC Essentials

Présentation

Si vous ne connaissez pas le fournisseur de ressources d’enregistrement (SRP) et sa relation avec le contenu généré par l’utilisateur (UGC), consultez la section Présentation de l’Enregistrement de contenu communautaire et du fournisseur de ressources d’Enregistrement.

Cette section de la documentation contient des renseignements essentiels sur le PRS et le CU.

API StorageResourceProvider

L’API SocialResourceProvider (API SRP) est une extension de plusieurs API du fournisseur de ressources Sling. Il comprend la prise en charge de la pagination et de l’incrément atomique (utile pour le décompte et le score).

Les Requêtes sont nécessaires pour les composants de la SCF, car il est nécessaire de trier par date, utilité, nombre de votes, etc. Toutes les options du PSR sont dotées de mécanismes de requête flexibles qui ne reposent pas sur le cumul.

L'emplacement de l'enregistrement SRP incorpore le chemin du composant. L'API SRP doit toujours être utilisée pour accéder à l'UGC car le chemin racine dépend de l'option SRP sélectionnée, telle que ASRP, MSRP ou JSRP.

L'API SRP n'est pas une classe abstraite, c'est une interface. Une mise en oeuvre personnalisée ne doit pas être entreprise à la légère, car les avantages des améliorations futures apportées aux implémentations internes seraient négligés lors de la mise à niveau vers une nouvelle version.

Les méthodes d’utilisation de l’API SRP sont les utilitaires fournis, tels que ceux qui se trouvent dans le package SocialResourceUtilities.

Lors de la mise à niveau à partir de AEM 6.0 ou d'une version antérieure, il sera nécessaire de migrer UGC pour tous les fichiers SRP, pour lesquels un outil Open Source est disponible. See Upgrading to AEM Communities 6.3.

Remarque

Historiquement, les utilitaires d’accès à l’UGC se trouvaient dans le package SocialUtils, qui n’existe plus.

Pour les utilitaires de remplacement, voir Refactorisation deSocialUtils.

Méthode d'utilitaire d'accès à l'UGC

Pour accéder à l’UGC, utilisez une méthode issue du package SocialResourceUtilities qui renvoie un chemin d’accès approprié pour accéder à l’UGC à partir de SRP et remplace la méthode déconseillée trouvée dans le package SocialUtils.

Voici un exemple minimal d'utilisation de la méthode resourceToUGCStoragePath() dans une servlet :

import com.adobe.cq.social.srp.utilities.api.SocialResourceUtilities;

@Reference
private SocialResourceUtilities socialResourceUtilities;

@Override
protected void doGet(final SlingHttpServletRequest request, final SlingHttpServletResponse response) throws ServletException, IOException {
  String ugcPath = socialResourceUtilities.resourceToUGCStoragePath(request.getResource());
  // rest of servlet
}

Pour d’autres remplacements de SocialUtils, voir SocialUtils Refactoring.

Pour obtenir des instructions de codage, consultez Accès à l’UGC avec SRP.

ATTENTION

La ressource de chemin d'accèsToUGCStoragePath() renvoie *ne convient pas pour la vérification de l'ACL.

Méthode d'utilitaire pour accéder aux listes ACL

Certaines implémentations SRP, telles que ASRP et MSRP, stockent le contenu de la communauté dans des bases de données qui ne fournissent aucune vérification ACL. Les noeuds d’ombre fournissent un emplacement dans le référentiel local auquel les ACL peuvent être appliquées.

A l’aide de l’API SRP, toutes les options SRP effectuent la même vérification de l’emplacement de l’ombre avant toutes les opérations CRUD.

Pour vérifier les listes de contrôle d'accès, utilisez une méthode qui renvoie un chemin approprié pour vérifier les autorisations appliquées à l'UGC de la ressource.

Voici un exemple simple d’utilisation de la méthode resourceToACLPath() dans une servlet :

import com.adobe.cq.social.srp.utilities.api.SocialResourceUtilities;

@Reference
private SocialResourceUtilities socialResourceUtilities;

@Override
protected void doGet(final SlingHttpServletRequest request, final SlingHttpServletResponse response) throws ServletException, IOException {
  String aclPath = socialResourceUtilities.resourceToACLPath(request.getResource());
  // rest of servlet
}
ATTENTION

Le chemin renvoyé par resourceToACLPath() ne *convient pas pour accéder à l'UGC lui-même.

Les descriptions suivantes de l'emplacement des enregistrements peuvent être utiles pour le développement avec le Programme de recherche en milieu de travail (JSRP) ou peut-être le Programme de recherche en milieu de travail (MSRP). Il n'existe actuellement aucune interface utilisateur pour accéder à l'UGC stocké dans ASRP, comme il en existe pour JSRP (CRXDE Lite) et MSRP (outils MongoDB).

emplacement du composant

Lorsqu’un membre entre à l’UGC dans l’environnement de publication, il interagit avec un composant dans le cadre d’un site AEM.

Un exemple de ce composant est le composant commentaires qui existe dans le site Community Components Guide . Le chemin d’accès au noeud de commentaires dans le référentiel local est :

  • Chemin du composant = /content/community-components/fr/commentaires/jcr:content/content/includable/commentaires

emplacement du noeud fantôme

La création de l’UGC crée également un noeud d’ ombre auquel les ACL nécessaires sont appliquées. Le chemin d’accès au noeud fantôme correspondant dans le référentiel local est le résultat du préattente du chemin d’accès racine du noeud fantôme au chemin d’accès du composant :

  • Chemin d’accès racine = /content/usergenerate
  • Noeud fantôme de commentaire = /content/usergenerate/content/community-components/fr/commentaires/jcr:content/content/includable/commentaires

Emplacement UGC

L’UGC n’est créé dans aucun de ces emplacements et ne doit être accessible qu’à l’aide d’une méthode d’ utilitaire qui appelle l’API SRP.

  • Chemin d’accès racine = /content/usergenerate/asi/srp-choice
  • Noeud UGC pour JSRP = /content/usergenerate/asi/jcr/content/community-components/fr/commentaires/jcr:content/content/includable/commentaires/srzd-let_it_be_

Notez que, pour JSRP, le noeud UGC sera uniquement présent sur l’instance AEM (auteur ou publication) sur laquelle il a été saisi. Si elle est saisie sur une instance de publication, la modération ne sera pas possible à partir de la console de modération sur l’auteur.

  • Présentation du fournisseur de ressources d'Enregistrement - Présentation et présentation de l'utilisation du référentiel
  • Accès à l'UGC avec SRP - directives de codage
  • Réfactorisation de SocialUtils - Mappage des méthodes d’utilitaire obsolètes aux méthodes d’utilitaire SRP actuelles

Sur cette page