Skip to content

Instantly share code, notes, and snippets.

@sgaem
Created October 25, 2020 02:31
This is a servlet which return true or false, if the AEM run mode is publish or not.
import org.apache.sling.api.SlingHttpServletRequest;
import org.apache.sling.api.SlingHttpServletResponse;
import org.apache.sling.api.servlets.SlingAllMethodsServlet;
import org.apache.sling.settings.SlingSettingsService;
import org.osgi.service.component.annotations.Component;
import org.osgi.service.component.annotations.Reference;
import javax.servlet.Servlet;
import java.io.IOException;
@Component(
service = {Servlet.class},
property = {
"sling.servlet.paths=/bin/aem-integration/tasks",
"sling.servlet.paths=/bin/aem-integration/files",
"sling.servlet.extensions=json",
"sling.servlet.methods=GET"
}
)
public class RunModeServlet extends SlingAllMethodsServlet {
@Reference
private SlingSettingsService slingSettingsService;
@Override
protected void doGet(SlingHttpServletRequest request, SlingHttpServletResponse response) throws IOException {
response.getWriter().println(this.slingSettingsService.getRunModes().contains("publish"));
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment