// Path: environment.monitor.core/src/main/java/org/yagel/monitor/Resource.java
// public interface Resource {
// 
//   String getId();
// 
//   String getName();
// 
// }
// 
// Path: environment.monitor.core/src/main/java/org/yagel/monitor/ResourceStatus.java
// public interface ResourceStatus {
// 
//   Resource getResource();
// 
//   void setResource(Resource resource);
// 
//   Status getStatus();
// 
//   void setStatus(Status status);
// 
//   Date getUpdated();
// 
//   void setUpdated(Date updated);
// }


import org.apache.commons.lang3.builder.ToStringBuilder;
import org.yagel.monitor.Resource;
import org.yagel.monitor.ResourceStatus;
import java.util.Date;
import java.util.Objects;
package org.yagel.monitor.resource;



public class ResourceStatusImpl implements ResourceStatus {

  private Resource resource;
  private Status status;
  private Date updated = new Date();


  public ResourceStatusImpl(Resource resource, Status status) {
    this.resource = resource;
    this.status = status;
  }

  public ResourceStatusImpl(Resource resource, Status status, Date updated) {
    this(resource, status);
    this.updated = updated;
  }


  @Override
// Path: environment.monitor.core/src/main/java/org/yagel/monitor/Resource.java
// public interface Resource {
// 
//   String getId();
// 
//   String getName();
// 
// }
// 
// Path: environment.monitor.core/src/main/java/org/yagel/monitor/ResourceStatus.java
// public interface ResourceStatus {
// 
//   Resource getResource();
// 
//   void setResource(Resource resource);
// 
//   Status getStatus();
// 
//   void setStatus(Status status);
// 
//   Date getUpdated();
// 
//   void setUpdated(Date updated);
// }


// Path: environment.monitor.core/src/main/java/org/yagel/monitor/resource/ResourceStatusImpl.java
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.yagel.monitor.Resource;
import org.yagel.monitor.ResourceStatus;
import java.util.Date;
import java.util.Objects;

package org.yagel.monitor.resource;



public class ResourceStatusImpl implements ResourceStatus {

  private Resource resource;
  private Status status;
  private Date updated = new Date();


  public ResourceStatusImpl(Resource resource, Status status) {
    this.resource = resource;
    this.status = status;
  }

  public ResourceStatusImpl(Resource resource, Status status, Date updated) {
    this(resource, status);
    this.updated = updated;
  }


  @Override
  public Resource getResource() {