summaryrefslogblamecommitdiffstats
path: root/src/main/java/org/openslx/imagemaster/db/DbImage.java
blob: f5b8ee49143d43ec218996e52ca8f1a8129f5c1e (plain) (tree)
1
2
3
4
5
6
7
8
9
10






                                                      


                    

                            

                                   








                                                                                


                                                           
                                                                                       
                                                            





                                     















                                                                                                                                                                                                                                                                                                                          

         

                               


                                 


                                                                                                                                 
         




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