package com.bd.movie.domain;
import java.util.HashSet;
import java.util.Set;
import java.util.UUID;

/**
 <!-- begin-user-doc -->
 * An implementation of the model object '<em><b>MediaCharacter</b></em>'.
 <!-- end-user-doc -->
 *
 * @generated
 */
public class MediaCharacter  {

    /** @generated */
    private int id;
    /** @generated */
    private String name;


    /** @generated */
    private Set<Media> existsInMedia = new HashSet<Media>()
    /** @generated */
    private Set<Person> playedBy = new HashSet<Person>()

    /**
     <!-- begin-user-doc -->
     <!-- end-user-doc -->
     * @generated
     */
    public  MediaCharacter() {
    }

    /**
     <!-- begin-user-doc -->
     <!-- end-user-doc -->
     * @generated
     */
    public int getId() {
        return id;
    }    
    /**
     <!-- begin-user-doc -->
     <!-- end-user-doc -->
     * @generated
     */
    public void setId(int aId) {
        this.id = aId;
    }    
    /**
     <!-- begin-user-doc -->
     <!-- end-user-doc -->
     * @generated
     */
    public String getName() {
        return name;
    }    
    /**
     <!-- begin-user-doc -->
     <!-- end-user-doc -->
     * @generated
     */
    public void setName(String aName) {
        this.name = aName;
    }    


    /**
     <!-- begin-user-doc -->
     <!-- end-user-doc -->
     * @generated
     */
    public Set<Media> getExistsInMedia() {
        return existsInMedia;
    }    
    /**
     <!-- begin-user-doc -->
     <!-- end-user-doc -->
     * @generated
     */
    void setExistsInMedia(Set<Media> aExistsInMedia) {
        this.existsInMedia = aExistsInMedia;
    }
    /**
     <!-- begin-user-doc -->
     <!-- end-user-doc -->
     * @generated
     */
    public Set<Person> getPlayedBy() {
        return playedBy;
    }    
    /**
     <!-- begin-user-doc -->
     <!-- end-user-doc -->
     * @generated
     */
    void setPlayedBy(Set<Person> aPlayedBy) {
        this.playedBy = aPlayedBy;
    }

   

    /** @generated */
    private UUID uuid;
    
    /** @generated */
    public UUID getUUID() {
        if (uuid == null) {
            uuid = UUID.randomUUID();
        }
        return uuid;
    }
    
    /** @generated */
    private String getUUIDString() {
        return getUUID().toString();
    }
    
    /** @generated */
    private void setUUIDString(String uuidString) {
        uuid = UUID.fromString(uuidString);
    }
    
    /**
     * @generated
     */
    public boolean equals(Object other) {
        if (this == otherreturn true;
        if (!(other instanceof MediaCharacter)) return false;

        MediaCharacter mediaCharacter = (MediaCharacterother;

        return getUUID().equals(mediaCharacter.getUUID());
    }

    /**
     * @generated
     */
    public int hashCode() {
        return getUUID().hashCode();
    }    
   
    /**
     * @generated
     */
    public String toString() {
        StringBuffer sb = new StringBuffer();
        sb.append("MediaCharacter:");
        sb.append("  id=").append(id).append("\n");
        sb.append("  name=").append(name).append("\n");

        return sb.toString();
    }