/*
 * Copyright 2015-2020 OpenCB
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package org.opencb.biodata.models.common;

public class Status {

    private String id;
    private String description;
    private String date;

    public Status() {
        this("", "", "");
    }

    public Status(String id, String description, String date) {
        this.id = id;
        this.description = description;
        this.date = date;
    }

    @Override
    public String toString() {
        final StringBuilder sb = new StringBuilder("CustomStatus{");
        sb.append("id='").append(id).append('\'');
        sb.append(", description='").append(description).append('\'');
        sb.append(", date='").append(date).append('\'');
        sb.append('}');
        return sb.toString();
    }

    public String getId() {
        return id;
    }

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

    public String getDescription() {
        return description;
    }

    public Status setDescription(String description) {
        this.description = description;
        return this;
    }

    public String getDate() {
        return date;
    }

    public Status setDate(String date) {
        this.date = date;
        return this;
    }
}

@@ -657,29 +657,31 @@
 us %7B%0A%0A    pr
-ivate
+otected
  String id;%0A
@@ -678,37 +678,66 @@
 tring id;%0A    pr
-ivate
+otected String name;%0A    protected
  String descript
@@ -751,13 +751,15 @@
   pr
-iva
+otec
 te
+d
  Str
@@ -811,16 +811,20 @@
 (%22%22, %22%22,
+ %22%22,
  %22%22);%0A  
@@ -856,16 +856,29 @@
 ring id,
+ String name,
  String 
@@ -919,32 +919,58 @@
   this.id = id;%0A
+        this.name = name;%0A
         this.des
@@ -1127,14 +1127,8 @@
 er(%22
-Custom
 Stat
@@ -1177,32 +1177,89 @@
 ).append('%5C'');%0A
+        sb.append(%22, name='%22).append(name).append('%5C'');%0A
         sb.appen
@@ -1439,115 +1439,1115 @@
     
-public String getId() %7B%0A        return id;%0A    %7D%0A%0A    public Status setId(String id) %7B%0A        this.id = id
+@Override%0A    public boolean equals(Object o) %7B%0A        if (this == o) return true;%0A        if (!(o instanceof Status)) return false;%0A%0A        Status status = (Status) o;%0A%0A        if (!id.equals(status.id)) return false;%0A        if (name != null ? !name.equals(status.name) : status.name != null) return false;%0A        if (description != null ? !description.equals(status.description) : status.description != null) return false;%0A        return date != null ? date.equals(status.date) : status.date == null;%0A    %7D%0A%0A    @Override%0A    public int hashCode() %7B%0A        int result = id.hashCode();%0A        result = 31 * result + (name != null ? name.hashCode() : 0);%0A        result = 31 * result + (description != null ? description.hashCode() : 0);%0A        result = 31 * result + (date != null ? date.hashCode() : 0);%0A        return result;%0A    %7D%0A%0A    public String getId() %7B%0A        return id;%0A    %7D%0A%0A    public Status setId(String id) %7B%0A        this.id = id;%0A        return this;%0A    %7D%0A%0A    public String getName() %7B%0A        return name;%0A    %7D%0A%0A    public Status setName(String name) %7B%0A        this.name = name
 ;%0A  

complete Status data model, #opencga-1849