/*
* Copyright (c) 2013 EMC Corporation
* All Rights Reserved
*/
package com.emc.vipr.model.sys.healthmonitor;
import com.emc.vipr.model.sys.healthmonitor.HealthMonitorConstants;
import com.emc.vipr.model.sys.healthmonitor.ProcModels.ProcessStatus;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
/**
* Represents service statistics
*/
@XmlRootElement(name = "service_stats")
public class ServiceStats {
// Default constructor for JAXB
public ServiceStats() {
this.serviceName = HealthMonitorConstants.UNKNOWN;
}
public ServiceStats(String serviceName) {
this.serviceName = serviceName;
}
public ServiceStats(String serviceName, String command, int fileDescriptors,
ProcessStatus processStatus) {
this.serviceName = serviceName;
this.command = command;
this.fileDescriptors = fileDescriptors;
this.processStatus = processStatus;
}
// proc/[pid]/cmdline
private String serviceName;
// proc/[pid]/comm
private String command;
// proc/[pid]/stat and proc/[pid]/statm
private ProcessStatus processStatus;
// proc/[pid/fd
private int fileDescriptors;
@XmlElement(name = "name")
public String getServiceName() {
return serviceName;
}
@XmlElement(name = "command")
public String getCommand() {
return command;
}
@XmlElement(name = "file_descriptors_ctr")
public int getFileDescriptors() {
return fileDescriptors;
}
@XmlElement(name = "status")
public ProcessStatus getProcessStatus() {
return processStatus;
}
public void setServiceName(String serviceName) {
this.serviceName = serviceName;
}
public void setProcessStatus(ProcessStatus processStatus) {
this.processStatus = processStatus;
}
public void setCommand(String command) {
this.command = command;
}
public void setFileDescriptors(int fileDescriptors) {
this.fileDescriptors = fileDescriptors;
}
}