package eu.betaas.taas.taasresourcesmanager.taasrmclient;
import org.apache.log4j.Logger;
import org.osgi.framework.BundleContext;
import org.osgi.framework.FrameworkUtil;
import org.osgi.framework.ServiceReference;
import eu.betaas.rabbitmq.publisher.interfaces.Publisher;
public class ServiceDMClient
{
private Logger logger= Logger.getLogger("betaas.service");
public ServiceDMClient ()
{
}
public void sendDetectedIssue (String issue)
{
String key = "dependability.service";
DependabilityMessage newMessage = new DependabilityMessage (issue);
// Retrieve the BundleContext from the OSGi Framework
BundleContext context = FrameworkUtil.getBundle(ServiceDMClient.class).getBundleContext();
ServiceReference serviceReference = context.getServiceReference(Publisher.class.getName());
if (serviceReference==null)return;
logger.info("Sending error to queue");
Publisher service = (Publisher) context.getService(serviceReference);
logger.info("Sending..");
service.publish(key,newMessage.getData());
logger.info("Sent!");
}
}