Skip to content

Instantly share code, notes, and snippets.

package com.aemks.core.workflow;
import com.adobe.cq.dam.cfm.ContentFragment;
import com.adobe.granite.workflow.WorkflowException;
import com.adobe.granite.workflow.WorkflowSession;
import com.adobe.granite.workflow.exec.WorkItem;
import com.adobe.granite.workflow.exec.WorkflowData;
import com.adobe.granite.workflow.exec.WorkflowProcess;
import com.adobe.granite.workflow.metadata.MetaDataMap;
import com.day.cq.commons.jcr.JcrConstants;
package com.aemks.core.jobs;
import org.apache.sling.event.jobs.Job;
import org.apache.sling.event.jobs.consumer.JobConsumer;
import org.osgi.service.component.annotations.Component;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Component(
service = JobConsumer.class,
package com.aemks.core.listeners;
import com.day.cq.commons.jcr.JcrConstants;
import com.day.cq.wcm.api.NameConstants;
import org.apache.jackrabbit.api.observation.JackrabbitEventFilter;
import org.apache.jackrabbit.api.observation.JackrabbitObservationManager;
import org.apache.sling.event.jobs.JobManager;
import org.apache.sling.jcr.api.SlingRepository;
import org.osgi.service.component.annotations.Activate;
import org.osgi.service.component.annotations.Component;
package com.aemks.core.models;
import com.day.cq.wcm.api.Page;
import org.apache.commons.io.FilenameUtils;
import org.apache.sling.api.SlingHttpServletRequest;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.api.resource.ResourceResolver;
import org.apache.sling.models.annotations.DefaultInjectionStrategy;
import org.apache.sling.models.annotations.Model;
import org.apache.sling.models.annotations.injectorspecific.Self;
package com.aemks.core.servlets;
import com.aemks.core.services.MSMService;
import org.apache.sling.api.SlingHttpServletRequest;
import org.apache.sling.api.SlingHttpServletResponse;
import org.apache.sling.api.servlets.SlingAllMethodsServlet;
import org.apache.sling.api.servlets.SlingSafeMethodsServlet;
import org.apache.sling.servlets.annotations.SlingServletPaths;
import org.osgi.service.component.annotations.Component;
import org.osgi.service.component.annotations.Reference;
package com.aemks.core.services.impl;
import com.aemks.core.services.MSMService;
import com.day.cq.contentsync.handler.util.RequestResponseFactory;
import com.day.cq.wcm.api.commands.WCMCommand;
import com.day.cq.wcm.msm.api.MSMNameConstants;
import org.apache.sling.api.resource.ResourceResolver;
import org.apache.sling.engine.SlingRequestProcessor;
import org.osgi.service.component.annotations.Component;
import org.osgi.service.component.annotations.Reference;
package com.aemks.core.services;
import org.apache.sling.api.resource.ResourceResolver;
/**
* This is a custom service used to create live copy.
*/
public interface MSMService {
public void createLiveCopy(ResourceResolver resourceResolver, String srcPath, String destPath, String title, String label,
@sreeni-b
sreeni-b / ref-link-rewriter.xml
Created July 2, 2020 10:42
Master Link Rewriter Config
@sreeni-b
sreeni-b / ReferenceLinkTransformer.java
Created July 2, 2020 10:28
Master Link Transformer
package com.aemks.core.transformers;
import com.day.cq.wcm.api.Page;
import com.day.cq.wcm.api.PageManager;
import com.day.cq.wcm.api.WCMException;
import com.day.cq.wcm.msm.api.LiveRelationship;
import com.day.cq.wcm.msm.api.LiveRelationshipManager;
import org.apache.cocoon.xml.sax.AbstractSAXPipe;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.rewriter.ProcessingComponentConfiguration;
@sreeni-b
sreeni-b / ReferenceLinkTransformerFactory.java
Last active July 2, 2020 10:22
Master Link Transformer Factory
package com.aemks.core.transformers;
import org.apache.sling.rewriter.Transformer;
import org.apache.sling.rewriter.TransformerFactory;
import org.osgi.service.component.annotations.Component;
/**
* This link transformer factory is used to rewrite master links to live copy links
*/
@Component(