<?php

namespace OfficeBrain\CustomBundle\CmsBundle\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 * CmsMediaLibrary
 *
 * @ORM\Table(name="tbl_cms_media_library")
 * @ORM\Entity(repositoryClass="OfficeBrain\CustomBundle\CmsBundle\Entity\CmsMediaLibraryRepository")
 */
class CmsMediaLibrary
{
    /**
     * @var integer
     *
     * @ORM\Column(name="id", type="bigint", options={"unsigned":true})
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    private $id;

    /**
     * @var string
     *
     * @ORM\Column(name="name", type="string", length=255, options={"comment" : "This is the name fetched from the uploaded media using file object."})
     */
    private $name;

    /**
     * @var string
     *
     * @ORM\Column(name="type", type="string", length=10)
     */
    private $type;
    
    /**
     * @var string
     *
     * @ORM\Column(name="is_artwork", type="string", columnDefinition="enum('0','1')", nullable=true)
     * 0 = No
     * 1 = Yes
     */
    private $isArtwork;
    
    /**
     * @var string
     *
     * @ORM\Column(name="image_name", type="string", length=255, nullable=true, options={"comment" : "This is the user inputed image name"})
     *
     */
    private $imageName;
    
    /**
     * @var string
     *
     * @ORM\Column(name="customer_name", type="string", length=255, nullable=true, options={"comment" : "This is the name of the customer to whome the image belongs."})
     *
     */
    private $customerName;
    
    /**
     * @var integer
     *
     * @ORM\Column(name="instance_id", type="integer")
     */
    private $instanceId;
    
    /**
     * @var string
     *
     * @ORM\Column(name="instance_type", type="string")
     */
    private $instanceType;

    /**
     * @var \DateTime
     *
     * @ORM\Column(name="createdAt", type="datetime")
     */
    private $createdAt;

    /**
     * @var integer
     *
     * @ORM\Column(name="createdUid", type="integer")
     */
    private $createdUid;
    
    /**
     * @var \DateTime
     *
     * @ORM\Column(name="deletedAt", type="datetime", nullable=true)
     */
    private $deletedAt;
    
    /**
     * @var integer
     *
     * @ORM\Column(name="deletedUid", type="integer", nullable=true)
     */
    private $deletedUid;

    /**
     * Get id
     *
     * @return integer
     */
    public function getId()
    {
        return $this->id;
    }

    /**
     * Set name
     *
     * @param string $name
     * @return CmsMediaLibrary
     */
    public function setName($name)
    {
        $this->name = $name;

        return $this;
    }

    /**
     * Get name
     *
     * @return string
     */
    public function getName()
    {
        return $this->name;
    }

    /**
     * Set type
     *
     * @param string $type
     * @return CmsMediaLibrary
     */
    public function setType($type)
    {
        $this->type = $type;

        return $this;
    }

    /**
     * Get type
     *
     * @return string
     */
    public function getType()
    {
        return $this->type;
    }

    /**
     * Set isArtwork
     *
     * @param string $isArtwork
     * @return CmsMediaLibrary
     */
    public function setIsArtwork($isArtwork)
    {
        $this->isArtwork = $isArtwork;

        return $this;
    }

    /**
     * Get isArtwork
     *
     * @return string
     */
    public function getIsArtwork()
    {
        return $this->isArtwork;
    }

    /**
     * Set imageName
     *
     * @param string $imageName
     * @return CmsMediaLibrary
     */
    public function setImageName($imageName)
    {
        $this->imageName = $imageName;

        return $this;
    }

    /**
     * Get imageName
     *
     * @return string
     */
    public function getImageName()
    {
        return $this->imageName;
    }

    /**
     * Set customerName
     *
     * @param string $customerName
     * @return CmsMediaLibrary
     */
    public function setCustomerName($customerName)
    {
        $this->customerName = $customerName;

        return $this;
    }

    /**
     * Get customerName
     *
     * @return string
     */
    public function getCustomerName()
    {
        return $this->customerName;
    }

    /**
     * Set instanceId
     *
     * @param integer $instanceId
     * @return CmsMediaLibrary
     */
    public function setInstanceId($instanceId)
    {
        $this->instanceId = $instanceId;

        return $this;
    }

    /**
     * Get instanceId
     *
     * @return integer
     */
    public function getInstanceId()
    {
        return $this->instanceId;
    }

    /**
     * Set instanceType
     *
     * @param string $instanceType
     * @return CmsMediaLibrary
     */
    public function setInstanceType($instanceType)
    {
        $this->instanceType = $instanceType;

        return $this;
    }

    /**
     * Get instanceType
     *
     * @return string
     */
    public function getInstanceType()
    {
        return $this->instanceType;
    }

    /**
     * Set createdAt
     *
     * @param \DateTime $createdAt
     * @return CmsMediaLibrary
     */
    public function setCreatedAt($createdAt)
    {
        $this->createdAt = $createdAt;

        return $this;
    }

    /**
     * Get createdAt
     *
     * @return \DateTime
     */
    public function getCreatedAt()
    {
        return $this->createdAt;
    }

    /**
     * Set createdUid
     *
     * @param integer $createdUid
     * @return CmsMediaLibrary
     */
    public function setCreatedUid($createdUid)
    {
        $this->createdUid = $createdUid;

        return $this;
    }

    /**
     * Get createdUid
     *
     * @return integer
     */
    public function getCreatedUid()
    {
        return $this->createdUid;
    }

    /**
     * Set deletedAt
     *
     * @param \DateTime $deletedAt
     * @return CmsMediaLibrary
     */
    public function setDeletedAt($deletedAt)
    {
        $this->deletedAt = $deletedAt;

        return $this;
    }

    /**
     * Get deletedAt
     *
     * @return \DateTime
     */
    public function getDeletedAt()
    {
        return $this->deletedAt;
    }

    /**
     * Set deletedUid
     *
     * @param integer $deletedUid
     * @return CmsMediaLibrary
     */
    public function setDeletedUid($deletedUid)
    {
        $this->deletedUid = $deletedUid;

        return $this;
    }

    /**
     * Get deletedUid
     *
     * @return integer
     */
    public function getDeletedUid()
    {
        return $this->deletedUid;
    }
}
