package com.sonymusic.dx.dxadvsearchservice.searchModel;

public class RecordingProjectSearchModel {
    private String projectNumber;
    private RecordingProjectRequestModel projectType;
    private String projectTitle;
    private String mainArtist;
    private RecordingProjectRequestModel initiator;
    private String initiatedBy;
    private String initiatedFromDate;
    private String initiatedToDate;
    private RecordingProjectRequestModel maintenanceOwner;
    private RecordingProjectRequestModel repertoireOwner;
    private RecordingProjectRequestModel imprintLabel;
    private String productProfitCenter;

    public static class RecordingProjectRequestModel {
        private Object key;
        private String name;


        public RecordingProjectRequestModel(Object key,String name){
            this.key = key;
            this.name=name;
        }

        public  Object getKey(){
            return key;
        }

        public void setKey(Object key){
            this.key = key;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        public Long getKeyAsLong(){
            if (key instanceof Long){
                return (Long) key;
            }
            if (key instanceof String){
                return Long.valueOf((String) key);
            }
            return null;
        }

        public String getKeyAsString(){
            return key!=null?key.toString() :null;
        }

    }

    public String getProjectNumber() {
        return projectNumber;
    }

    public void setProjectNumber(String projectNumber) {
        this.projectNumber = projectNumber;
    }

    public RecordingProjectRequestModel getProjectType() {
        return projectType;
    }

    public void setProjectType(RecordingProjectRequestModel projectType) {
        this.projectType = projectType;
    }

    public String getProjectTitle() {
        return projectTitle;
    }

    public void setProjectTitle(String projectTitle) {
        this.projectTitle = projectTitle;
    }

    public String getMainArtist() {
        return mainArtist;
    }

    public void setMainArtist(String mainArtist) {
        this.mainArtist = mainArtist;
    }



    public String getInitiatedBy() {
        return initiatedBy;
    }

    public void setInitiatedBy(String initiatedBy) {
        this.initiatedBy = initiatedBy;
    }

    public String getInitiatedFromDate() {
        return initiatedFromDate;
    }

    public void setInitiatedFromDate(String initiatedFromDate) {
        this.initiatedFromDate = initiatedFromDate;
    }

    public String getInitiatedToDate() {
        return initiatedToDate;
    }

    public void setInitiatedToDate(String initiatedToDate) {
        this.initiatedToDate = initiatedToDate;
    }


    public String getProductProfitCenter() {
        return productProfitCenter;
    }

    public void setProductProfitCenter(String productProfitCenter) {
        this.productProfitCenter = productProfitCenter;
    }

    public RecordingProjectRequestModel getInitiator() {
        return initiator;
    }

    public void setInitiator(RecordingProjectRequestModel initiator) {
        this.initiator = initiator;
    }

    public RecordingProjectRequestModel getMaintenanceOwner() {
        return maintenanceOwner;
    }

    public void setMaintenanceOwner(RecordingProjectRequestModel maintenanceOwner) {
        this.maintenanceOwner = maintenanceOwner;
    }

    public RecordingProjectRequestModel getRepertoireOwner() {
        return repertoireOwner;
    }

    public void setRepertoireOwner(RecordingProjectRequestModel repertoireOwner) {
        this.repertoireOwner = repertoireOwner;
    }

    public RecordingProjectRequestModel getImprintLabel() {
        return imprintLabel;
    }

    public void setImprintLabel(RecordingProjectRequestModel imprintLabel) {
        this.imprintLabel = imprintLabel;
    }
}
