I was attempting to recreate/experiment/learn more about the Social Component Framework and getting the following warning from Maven on build:
[WARNING] C:\Projects\my-project\core\src\main\java\com\sample-project\my-project\core\servlets\SetStatusOperation.java [1:1]: Component com.sample-project.my-project.core.servlets.SetStatusOperation is using the deprecated inheritance feature and inherits from com.adobe.cq.social.scf.core.operations.AbstractSocialOperation. This feature will be removed in future versions.
An updated TodoMVC example is available on GitHub (still a work in process).
"SCF+SRP implementation of ToDo MVC Demostrates how to develop a SCF+SRP component from scratch"
See the use of ResourceResolverFactory and SocialResourceProvider.
Be aware that the API docs available from docs.adobe.com reflect the 6.2 GA release (Communities 1.9.xxx). The API docs for Communities feature packs (1.10.xxx) will be available through your dev environment (IDE).
Wow, okay. Shortly after posting that, I stumbled across InternalSocialResourceUtilities in the documentation and that appears to have the two of the three INTERNAL_USE_ONLY methods I mentioned in my last post. Still not sure what to do about mayPost(); though I guess I don't have to do that check and can just try to catch the error if it fails.
My question regarding the deprecated ModifyingResourceProvider still stands though.
The method create(ResourceResolver, String, Map<String,Object>) from the type ModifyingResourceProvider is deprecated.
This is from Line 108 of the TaskServiceImpl.java example on the aem-scf-sample-components-customize github page. It's using SocialResourceProvider (com.adobe.cq.social.srp.SocialResourceProvider), which I'm guessing extends/implements ModifyingResourceProvider (org.apache.sling.api.resource.ModifyingResourceProvider). Is there a recommended alternative or is Adobe updating their Communities API to address this deprecation?
One more issue I have after updating the dependencies in sample code from the github site above to work with AEM 6.2, looking at the SocialUtils Refactoring documentation... I'm wondering why certain methods were made INTERNAL_USE_ONLY, specifically the ones used in the aforementioned sample project:
If these have been removed because there's ONE other method that does the job of creating the UGC content, then please let me know!