EventMapBean.java 1.48 KB
package fi.insomnia.bortal.beans;

import javax.ejb.EJB;
import javax.ejb.Stateless;

import fi.insomnia.bortal.enums.Permission;
import fi.insomnia.bortal.enums.RolePermission;
import fi.insomnia.bortal.facade.EventMapFacade;
import fi.insomnia.bortal.model.EventMap;
import fi.insomnia.bortal.model.LanEvent;

/**
 * Session Bean implementation class EventMapBean
 */
@Stateless
public class EventMapBean implements EventMapBeanLocal {

    @EJB
    private EventMapFacade eventmapfacade;

    @EJB
    private EventBeanLocal eventbean;
    @EJB
    private UserBeanLocal userbean;



    @Override
    public EventMap saveMap(EventMap eventmap) {
        userbean.fatalPermission(Permission.MAP, RolePermission.WRITE);
        return eventmapfacade.merge(eventmap);

    }

    @Override
    public EventMap create(String mapname) {
        userbean.fatalPermission(Permission.MAP, RolePermission.WRITE);
        EventMap ret = new EventMap(eventbean.getCurrentEvent());
        ret.setName(mapname);
        LanEvent event = eventbean.getCurrentEvent();
        event.getEventMaps().add(ret);
        eventbean.mergeChanges(event);
        return ret;

    }

    @Override
    public void sendImage(int destId, byte[] imagedata) {
        userbean.fatalPermission(Permission.MAP, RolePermission.WRITE);
        LanEvent event = eventbean.getCurrentEvent();
        EventMap map = eventmapfacade.find(event.getId(), destId);
        if (map != null) {
            map.setMapData(imagedata);
        }

    }
}