package org.openslx.imagemaster.db; import java.text.SimpleDateFormat; import java.util.Date; import org.openslx.imagemaster.thrift.iface.ImageData; public class DbImage { private String UUID; public DbImage(String UUID) { this.UUID = UUID; } /** * Check if image with imageData already exists. (Only checks the UUID.) * * @param imageData * @return */ public static boolean exists( ImageData imageData ) { if ( MySQL.findUniqueOrNull( DbImage.class, "SELECT images.UUID FROM images WHERE images.UUID = ?", imageData.uuid ) == null ) { return false; } else { return true; } } public static int insert( ImageData imageData ) { Date createTime = new Date( imageData.imageCreateTime ); Date updateTime = new Date( imageData.imageUpdateTime ); SimpleDateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss" ); int ownerId = DbUser.getUserIdByName( imageData.imageOwner ); return MySQL .update( "INSERT INTO images (UUID, image_version, image_name, image_path, image_createTime, image_updateTime, image_owner, content_operatingSystem, status_isValid, status_isDeleted, image_shortDescription, image_longDescription) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", imageData.uuid, imageData.imageVersion, imageData.imageName, "!uploading!", sdf.format( createTime ), sdf.format( updateTime ), ownerId, imageData.conentOperatingSystem, imageData.statusIsValid, imageData.statusIsDeleted, imageData.imageShortDescription, imageData.imageLongDescription ); } public String getUUID() { return this.UUID; } public static int update( ImageData imageData, String location ) { return MySQL.update( "UPDATE images SET images.image_path = ? WHERE images.UUID = ?", location, imageData.uuid ); } public static int delete( ImageData imageData ) { return MySQL.update( "DELETE FROM images WHERE images.UUID=?", imageData.uuid ); } }