/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package edu.harvard.iq.dataverse; import javax.faces.application.FacesMessage; import org.primefaces.push.EventBus; import org.primefaces.push.RemoteEndpoint; import org.primefaces.push.annotation.OnClose; import org.primefaces.push.annotation.OnMessage; import org.primefaces.push.annotation.OnOpen; import org.primefaces.push.annotation.PathParam; import org.primefaces.push.annotation.PushEndpoint; import org.primefaces.push.annotation.Singleton; import org.primefaces.push.impl.JSONEncoder; import java.util.logging.Logger; /** * * @author Leonid Andreev */ @PushEndpoint("/ingest/dataset/{datasetId}") @Singleton public class IngestUpdatePushResource { private final Logger logger = Logger.getLogger(IngestUpdatePushResource.class.getCanonicalName()); @PathParam("datasetId") private String datasetId; /* @OnOpen public void onOpen(RemoteEndpoint r, EventBus eventBus) { logger.info("OnOpen {"+datasetId+"} "+r.toString()); } @OnClose public void onClose(RemoteEndpoint r, EventBus eventBus) { logger.info("OnClose {"+datasetId+"} "+r.toString()); } */ @OnMessage(encoders = {JSONEncoder.class}) public FacesMessage onMessage(FacesMessage message) { logger.fine("OnMessage {"+datasetId+"}: "+message.getDetail()); return message; } }