/*
 * Arrebol Consultancy copyright.
 * 
 * This code belongs to Arrebol Consultancy
 * its use, redistribution or modification are prohibited 
 * without written authorization from Arrebol Consultancy.
 */
package com.arrebol.taxiservicios.model.admin;

import com.arrebol.taxiservicios.model.core.Person;
import com.arrebol.taxiservicios.model.core.User;
import com.arrebol.taxiservicios.model.enums.GenericEnumType;
import java.io.Serializable;
import java.util.Date;

/**
 *
 * @author Carlos Janitzio Zavala Lopez <janitzio.zavala@arrebol.com.mx>
 */
public class ReleaseResource implements Serializable {

    private static final long serialVersionUID = -1L;

    private String id;
    private Person driver;
    private Taxi taxi;
    private Date startDate;
    private Date endDate;
    private GenericEnumType active;
    private User createdBy;
    private Date createdOn;
    private User lastUpdatedBy;
    private Date lastUpdatedOn;

    public ReleaseResource() {
    }

    /**
     * Create a new driver record.
     *
     * @param id
     * @param driver
     * @param startDate
     * @param active
     * @param createdBy
     * @param createdOn
     */
    public ReleaseResource(String id, Person driver, Date startDate, GenericEnumType active, User createdBy, Date createdOn) {
        this.id = id;
        this.driver = driver;
        this.startDate = startDate;
        this.active = active;
        this.createdBy = createdBy;
        this.createdOn = createdOn;
    }

    /**
     * Create a new taxi record.
     *
     * @param id
     * @param taxi
     * @param startDate
     * @param active
     * @param createdBy
     * @param createdOn
     */
    public ReleaseResource(String id, Taxi taxi, Date startDate, GenericEnumType active, User createdBy, Date createdOn) {
        this.id = id;
        this.taxi = taxi;
        this.startDate = startDate;
        this.active = active;
        this.createdBy = createdBy;
        this.createdOn = createdOn;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public Person getDriver() {
        return driver;
    }

    public void setDriver(Person driver) {
        this.driver = driver;
    }

    public Taxi getTaxi() {
        return taxi;
    }

    public void setTaxi(Taxi taxi) {
        this.taxi = taxi;
    }

    public Date getStartDate() {
        return startDate;
    }

    public void setStartDate(Date startDate) {
        this.startDate = startDate;
    }

    public Date getEndDate() {
        return endDate;
    }

    public void setEndDate(Date endDate) {
        this.endDate = endDate;
    }

    public GenericEnumType getActive() {
        return active;
    }

    public void setActive(GenericEnumType active) {
        this.active = active;
    }

    public User getCreatedBy() {
        return createdBy;
    }

    public void setCreatedBy(User createdBy) {
        this.createdBy = createdBy;
    }

    public Date getCreatedOn() {
        return createdOn;
    }

    public void setCreatedOn(Date createdOn) {
        this.createdOn = createdOn;
    }

    public User getLastUpdatedBy() {
        return lastUpdatedBy;
    }

    public void setLastUpdatedBy(User lastUpdatedBy) {
        this.lastUpdatedBy = lastUpdatedBy;
    }

    public Date getLastUpdatedOn() {
        return lastUpdatedOn;
    }

    public void setLastUpdatedOn(Date lastUpdatedOn) {
        this.lastUpdatedOn = lastUpdatedOn;
    }

    @Override
    public String toString() {
        return "ReleaseResource{" + "driver=" + driver + ", taxi=" + taxi + ", startDate=" + startDate + ", active=" + active + ", createdOn=" + createdOn + '}';
    }

}
