I have a class 

```
public enum CustomerType {
    GOLD, SILVER, IRON, RUSTY

}

```

and another class :

```
@Entity

```

public class Customer implements Serializable {

```
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
private String firstName;
private String lastName;
private CustomerType type;

public Customer(){};
public Customer(String firstName, String lastName){
    this.firstName = firstName;
    this.lastName = lastName;
}
public Customer(String firstName, String lastName, CustomerType type){
    this.firstName = firstName;
    this.lastName = lastName;
    this.type = type;
}

public String getFirstName(){ return firstName;}
public String getLastName(){ return lastName;}
public Integer getId() {   return id; }
public CustomerType getType(){ return type;}

public void setId(Integer id) { this.id = id;}
public void setFirstName(String firstName){this.firstName = firstName;}
public void setLastName(String lastName ){this.lastName = lastName;}
public void setType(CustomerType type){this.type = type;}

@Override
public int hashCode() {
    int hash = 0;
    hash += (id != null ? id.hashCode() : 0);
    return hash;
}

@Override
public boolean equals(Object object) {
    // TODO: Warning - this method won't work in the case the id fields are not set
    if (!(object instanceof Customer)) {
        return false;
    }
    Customer other = (Customer) object;
    if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))) {
        return false;
    }
    return true;
}

@Override
public String toString() {
    return "entity.Customer[ id=" + id + " ]";
}

```

}

i have a constructor with parameters firstName, lastName, CustomerType type

in another class i want to create customer like this

```
Customer c1 = new Customer("ida", "heartless", GOLD); 

```

but it just won't let put enum parameter like this. How can I proper use enum? What i'm missing?