Commit 9721594f by Tuukka Kivilahti

Merge branch 'master' of dev.intra.insomnia.fi:/data/bortal

Conflicts:
	code/LanBortalDatabase/src/fi/insomnia/bortal/model/Place.java
	code/LanBortalWeb/src/fi/insomnia/bortal/servlet/PlaceMap.java
2 parents cd258e9b 90f3a3b1
......@@ -9,6 +9,7 @@ import javax.ejb.Stateless;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import fi.insomnia.bortal.enums.Role;
import fi.insomnia.bortal.facade.UserFacade;
import fi.insomnia.bortal.model.User;
......
package fi.insomnia.bortal.beans;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.io.OutputStream;
import java.util.Date;
import java.util.List;
import javax.ejb.EJB;
......@@ -37,6 +39,7 @@ public class PlaceMapBean implements PlaceMapBeanLocal {
public PlaceMapBean() {
// TODO Auto-generated constructor stub
}
@EJB
private PlaceFacade placeFacade;
@EJB
......@@ -46,6 +49,7 @@ public class PlaceMapBean implements PlaceMapBeanLocal {
@Override
public void printPlaceMapToStream(OutputStream outputStream, String filetype, Event event, Integer mapId, Integer userId, List<Integer> placeIds) throws IOException {
long begin = new Date().getTime();
Integer eventId = event.getId();
List<Place> selectedPlaceList = new ArrayList<Place>();
......@@ -55,7 +59,7 @@ public class PlaceMapBean implements PlaceMapBeanLocal {
selectedPlaceList.add(placeFacade.find(eventId, id));
}
logger.info("Got event {}, mapid {}", event, mapId);
logger.info("Got mapid {}, time {}", mapId, new Date().getTime() - begin);
if (selectedPlaceList.size() > 0) {
map = selectedPlaceList.get(0).getMap();
......@@ -65,11 +69,9 @@ public class PlaceMapBean implements PlaceMapBeanLocal {
List<Place> places = map.getPlaces();
logger.info("Places: from map {}", places.size());
logger.info("Places: from map {}, time {}", places.size(), new Date().getTime() - begin);
BufferedImage image = map.getMapWithPlaces();
if (userId != null) {
User user = userFacade.find(userId);
......@@ -83,12 +85,14 @@ public class PlaceMapBean implements PlaceMapBeanLocal {
}
}
}
logger.info("sometime {}", new Date().getTime() - begin);
for (Place place : selectedPlaceList) {
place.drawSelectedPlace(image);
}
logger.info("Prewrite {}", new Date().getTime() - begin);
ImageIO.write(image, filetype, outputStream);
logger.info("postwrite {}", new Date().getTime() - begin);
}
public String getSelectPlaceMapUrl(EventMap activeMap, List<Place> selectedPlaces, User user) {
......@@ -114,7 +118,6 @@ public class PlaceMapBean implements PlaceMapBeanLocal {
parameters += "&userid=" + user.getId();
}
return "/PlaceMap" + parameters;
// TODO: do something.
}
......
......@@ -2,7 +2,6 @@
<classpath>
<classpathentry kind="src" path="ejbModule"/>
<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/>
<classpathentry kind="lib" path="/LanBortal/EarContent/lib/LanBortalDatabase.jar"/>
<classpathentry kind="con" path="org.eclipse.jst.server.core.container/com.sun.enterprise.jst.server.runtimeTarget/GlassFish v3 Java EE 6">
<attributes>
<attribute name="owner.project.facets" value="jst.utility"/>
......
package fi.insomnia.bortal.enums;
public enum Role {
USER_BASE(true), // Logged in user
ADMIN_BASE(true),
SUPERADMIN(false) // Admin for this event
;
private boolean inDatabase;
Role(boolean inDb) {
inDatabase = inDb;
}
public boolean isInDatabase() {
return inDatabase;
}
}
......@@ -15,6 +15,7 @@ import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.Lob;
import javax.persistence.ManyToOne;
......@@ -24,7 +25,8 @@ import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Version;
import org.eclipse.persistence.annotations.Cache;
import org.eclipse.persistence.annotations.CacheType;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
......@@ -36,7 +38,6 @@ import org.slf4j.LoggerFactory;
@NamedQueries({
@NamedQuery(name = "EventMap.findAll", query = "SELECT e FROM EventMap e"),
@NamedQuery(name = "EventMap.findByName", query = "SELECT e FROM EventMap e WHERE e.name = :name") })
public class EventMap implements EventChildInterface {
private static final Logger logger = LoggerFactory.getLogger(EventMap.class);
......@@ -48,7 +49,7 @@ public class EventMap implements EventChildInterface {
private byte[] mapData;
@Column(name = "map_name")
private String name;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "map")
@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.EAGER, mappedBy = "map")
private List<Place> places = new ArrayList<Place>();
@ManyToOne(optional = false)
@JoinColumn(name = "event_id", referencedColumnName = "event_id", insertable = false, updatable = false, nullable = false)
......
......@@ -25,6 +25,10 @@ import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Version;
import org.eclipse.persistence.annotations.Cache;
import org.eclipse.persistence.annotations.CacheType;
/**
*
*/
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!