/** * Copyright (c) 2009 Juwi MacMillan Group GmbH * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ // license-header java merge-point /** * This is only generated once! It will never be overwritten. * You can (and have to!) safely modify it by hand. */ package de.juwimm.cms.model; import org.apache.log4j.Logger; import org.springframework.beans.factory.annotation.Autowired; /** * @see de.juwimm.cms.model.PictureHbm * @author <a href="mailto:carsten.schalm@juwimm.com">Carsten Schalm</a> , * Juwi|MacMillan Group Gmbh, Walsrode, Germany * @version $Id$ */ public class PictureHbmDaoImpl extends PictureHbmDaoBase { private static Logger log = Logger.getLogger(PictureHbmDaoImpl.class); @Autowired private SequenceHbmDao sequenceHbmDao; @Override public PictureHbm create(PictureHbm pictureHbm) { if (pictureHbm.getPictureId() == null || pictureHbm.getPictureId().intValue() == 0) { try { Integer id = sequenceHbmDao.getNextSequenceNumber("picture.picture_id"); pictureHbm.setPictureId(id); } catch (Exception e) { log.error("Error creating primary key", e); } } pictureHbm = super.create(pictureHbm); pictureHbm.setTimeStamp(System.currentTimeMillis()); return pictureHbm; } @Override @SuppressWarnings("unchecked") public java.util.Collection findAllPerSite(final int transform, final java.lang.Integer siteId) { return this.findAllPerSite(transform, "from de.juwimm.cms.model.PictureHbm as p where p.unit.site.siteId = ?", siteId); } @Override @SuppressWarnings("unchecked") public java.util.Collection findAllPerUnit(final int transform, final java.lang.Integer unitId) { return this.findAllPerUnit(transform, "from de.juwimm.cms.model.PictureHbm as p where p.unit.unitId = ?", unitId); } @Override @SuppressWarnings("unchecked") public java.util.Collection findAllPerViewComponent(final int transform, final java.lang.Integer viewComponentId) { return this.findAllPerViewComponent(transform, "from de.juwimm.cms.model.PictureHbm as p where p.viewComponent.viewComponentId = ?", viewComponentId); } @Override public java.lang.Object getIdForNameAndUnit(final int transform, final java.lang.Integer unitId, final java.lang.String name) { PictureHbm pic = (PictureHbm) this.getIdForNameAndUnit(transform, "from de.juwimm.cms.model.PictureHbm as pictureHbm where pictureHbm.unit.unitId = ? and pictureHbm.pictureName = ?", unitId, name); if (pic != null) { return pic.getPictureId(); } else { return 0; } } @Override public java.lang.Object getIdForNameAndViewComponent(final int transform, final java.lang.String name, final java.lang.Integer viewComponentId) { PictureHbm pic = (PictureHbm) this.getIdForNameAndViewComponent(transform, "from de.juwimm.cms.model.PictureHbm as pictureHbm where pictureHbm.pictureName = ? and pictureHbm.viewComponent.viewComponentId = ?", name, viewComponentId); if (pic != null) { return pic.getPictureId(); } else { return 0; } } @Override protected void handleDeletePictures(Integer[] ids) throws Exception { if (ids == null || ids.length == 0) { return; } for (Integer pictureId : ids) { remove(pictureId); } } @Override protected Integer handleClonePicture(Integer oldPictureId, UnitHbm newUnit) throws Exception { PictureHbm oldPicture = load(oldPictureId); PictureHbm newPicture = PictureHbm.Factory.newInstance(); newPicture.setAltText(oldPicture.getAltText()); newPicture.setHeight(oldPicture.getHeight()); newPicture.setWidth(oldPicture.getWidth()); newPicture.setMimeType(oldPicture.getMimeType()); newPicture.setPicture(oldPicture.getPicture()); newPicture.setPictureName(oldPicture.getPictureName()); newPicture.setPreview(oldPicture.getPreview()); newPicture.setThumbnail(oldPicture.getThumbnail()); newPicture.setThumbnailPopup(oldPicture.isThumbnailPopup()); /**set the new unit*/ newPicture.setUnit(newUnit); /* or new ViewComponent */ newPicture.setTitle(oldPicture.getTitle()); newPicture.setTimeStamp(oldPicture.getTimeStamp()); newPicture = create(newPicture); return newPicture.getPictureId(); } }