<?php

namespace Proxies\__CG__\Fishman\WorkshopBundle\Entity;

/**
 * THIS CLASS WAS GENERATED BY THE DOCTRINE ORM. DO NOT EDIT THIS FILE.
 */
class Workshopapplicationactivity extends \Fishman\WorkshopBundle\Entity\Workshopapplicationactivity implements \Doctrine\ORM\Proxy\Proxy
{
    private $_entityPersister;
    private $_identifier;
    public $__isInitialized__ = false;
    public function __construct($entityPersister, $identifier)
    {
        $this->_entityPersister = $entityPersister;
        $this->_identifier = $identifier;
    }
    /** @private */
    public function __load()
    {
        if (!$this->__isInitialized__ && $this->_entityPersister) {
            $this->__isInitialized__ = true;

            if (method_exists($this, "__wakeup")) {
                // call this after __isInitialized__to avoid infinite recursion
                // but before loading to emulate what ClassMetadata::newInstance()
                // provides.
                $this->__wakeup();
            }

            if ($this->_entityPersister->load($this->_identifier, $this) === null) {
                throw new \Doctrine\ORM\EntityNotFoundException();
            }
            unset($this->_entityPersister, $this->_identifier);
        }
    }

    /** @private */
    public function __isInitialized()
    {
        return $this->__isInitialized__;
    }

    
    public function getId()
    {
        if ($this->__isInitialized__ === false) {
            return (int) $this->_identifier["id"];
        }
        $this->__load();
        return parent::getId();
    }

    public function setName($name)
    {
        $this->__load();
        return parent::setName($name);
    }

    public function getName()
    {
        $this->__load();
        return parent::getName();
    }

    public function setInitdate($initdate)
    {
        $this->__load();
        return parent::setInitdate($initdate);
    }

    public function getInitdate()
    {
        $this->__load();
        return parent::getInitdate();
    }

    public function setEnddate($enddate)
    {
        $this->__load();
        return parent::setEnddate($enddate);
    }

    public function getEnddate()
    {
        $this->__load();
        return parent::getEnddate();
    }

    public function setDuration($duration)
    {
        $this->__load();
        return parent::setDuration($duration);
    }

    public function getDuration()
    {
        $this->__load();
        return parent::getDuration();
    }

    public function setActivityType($activityType)
    {
        $this->__load();
        return parent::setActivityType($activityType);
    }

    public function getActivityType()
    {
        $this->__load();
        return parent::getActivityType();
    }

    public function setPeriod($period)
    {
        $this->__load();
        return parent::setPeriod($period);
    }

    public function getPeriod()
    {
        $this->__load();
        return parent::getPeriod();
    }

    public function setPredecessorActivity($predecessorActivity)
    {
        $this->__load();
        return parent::setPredecessorActivity($predecessorActivity);
    }

    public function getPredecessorActivity()
    {
        $this->__load();
        return parent::getPredecessorActivity();
    }

    public function setSequence($sequence)
    {
        $this->__load();
        return parent::setSequence($sequence);
    }

    public function getSequence()
    {
        $this->__load();
        return parent::getSequence();
    }

    public function setStatus($status)
    {
        $this->__load();
        return parent::setStatus($status);
    }

    public function getStatus()
    {
        $this->__load();
        return parent::getStatus();
    }

    public function setFinished($finished)
    {
        $this->__load();
        return parent::setFinished($finished);
    }

    public function getFinished()
    {
        $this->__load();
        return parent::getFinished();
    }

    public function setAction($action)
    {
        $this->__load();
        return parent::setAction($action);
    }

    public function getAction()
    {
        $this->__load();
        return parent::getAction();
    }

    public function setDeleted($deleted)
    {
        $this->__load();
        return parent::setDeleted($deleted);
    }

    public function getDeleted()
    {
        $this->__load();
        return parent::getDeleted();
    }

    public function setWorkshopapplication(\Fishman\WorkshopBundle\Entity\Workshopapplication $workshopapplication = NULL)
    {
        $this->__load();
        return parent::setWorkshopapplication($workshopapplication);
    }

    public function getWorkshopapplication()
    {
        $this->__load();
        return parent::getWorkshopapplication();
    }

    public function setWorkbooks(\Fishman\WorkshopBundle\Entity\Workbook $workbooks = NULL)
    {
        $this->__load();
        return parent::setWorkbooks($workbooks);
    }

    public function getWorkbooks()
    {
        $this->__load();
        return parent::getWorkbooks();
    }

    public function setPlans(\Fishman\WorkshopBundle\Entity\Plan $plans = NULL)
    {
        $this->__load();
        return parent::setPlans($plans);
    }

    public function getPlans()
    {
        $this->__load();
        return parent::getPlans();
    }

    public function setQuestionapplications(\Fishman\WorkshopBundle\Entity\Questionapplication $questionapplications = NULL)
    {
        $this->__load();
        return parent::setQuestionapplications($questionapplications);
    }

    public function getQuestionapplications()
    {
        $this->__load();
        return parent::getQuestionapplications();
    }

    public function addWorkbook(\Fishman\WorkshopBundle\Entity\Workbook $workbooks)
    {
        $this->__load();
        return parent::addWorkbook($workbooks);
    }

    public function removeWorkbook(\Fishman\WorkshopBundle\Entity\Workbook $workbooks)
    {
        $this->__load();
        return parent::removeWorkbook($workbooks);
    }

    public function setWorkshopschedulingactivityId($workshopschedulingactivityId)
    {
        $this->__load();
        return parent::setWorkshopschedulingactivityId($workshopschedulingactivityId);
    }

    public function getWorkshopschedulingactivityId()
    {
        $this->__load();
        return parent::getWorkshopschedulingactivityId();
    }


    public function __sleep()
    {
        return array('__isInitialized__', 'id', 'name', 'initdate', 'enddate', 'duration', 'activity_type', 'period', 'predecessor_activity', 'workshopschedulingactivity_id', 'sequence', 'status', 'finished', 'action', 'deleted', 'plans', 'questionapplications', 'workbooks', 'workshopapplication');
    }

    public function __clone()
    {
        if (!$this->__isInitialized__ && $this->_entityPersister) {
            $this->__isInitialized__ = true;
            $class = $this->_entityPersister->getClassMetadata();
            $original = $this->_entityPersister->load($this->_identifier);
            if ($original === null) {
                throw new \Doctrine\ORM\EntityNotFoundException();
            }
            foreach ($class->reflFields as $field => $reflProperty) {
                $reflProperty->setValue($this, $reflProperty->getValue($original));
            }
            unset($this->_entityPersister, $this->_identifier);
        }
        
    }
}