OSGi Services

04/05/2019

Create an Interface SendInfo.java Class

package com.aem.core.poc;
public interface sendInfo {
         public String getSendInfo();
}

Create SendInfoImpl.java Class

package com.aem.core.poc;
import java.util.Map;
import org.apache.felix.scr.annotations.Service;
import org.apache.sling.api.SlingConstants;
import org.osgi.framework.Constants;
import org.osgi.service.component.annotations.Component;
import org.osgi.service.event.Event;
import org.osgi.service.event.EventConstants;
import org.osgi.service.event.EventHandler;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Component(immediate = true, property = {
Constants.SERVICE_DESCRIPTION + "=OGSi demo to pass a string to component",
EventConstants.EVENT_TOPIC + "=org/apache/sling/api/resource/Resource/*"
})
@Service(SendInfo.class)
public class SendInfoImpl implements SendInfo{
private final Logger logger = LoggerFactory.getLogger(getClass());
public String getSendInfo(){
logger.info("logger for SendInfoImpl ");
return "Nothing is true, Everything is permitted!";
}
}

Call the OSGi Service in HTL

<h3 data-sly-use.info="com.aem.core.poc.SendInfo">Info Received: ${info.SendInfo}</h3>

© 2019 TheVoiceOfDesmond. All rights reserved.
Powered by Webnode
Create your website for free! This website was made with Webnode. Create your own for free today! Get started