summaryrefslogblamecommitdiffstats
path: root/src/main/java/org/openslx/imagemaster/db/DbImage.java
blob: d3e8a949df65ac964719efb640c31ef36dc89a86 (plain) (tree)





















































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