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);
}
}