/* * Copyright (c) 2012 EMC Corporation * All Rights Reserved */ package com.emc.vipr.model.sys.logging; import java.util.ArrayList; import java.util.List; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlElement; import com.emc.vipr.model.sys.logging.LogSeverity; /** * The base request made to the log service resource. */ @XmlAccessorType(XmlAccessType.PROPERTY) public class LogRequestBase { // The list of ids for the Bourne nodes from which to collect log data. private List<String> nodeIds; // A list of the log file names from which to collect log data. private List<String> logNames; // The minimum severity level for the log messages to be returned. Messages // at or below (i.e., more severe), this severity level are to be returned. private LogSeverity severity; // Empty constructor protected LogRequestBase() { } /** * Constructor for log level requests. * * @param nodeIds The list of Bourne node ids. * @param logNames The list of log file names. * @param severity The severity level to set. */ protected LogRequestBase(List<String> nodeIds, List<String> logNames, LogSeverity severity) { if (nodeIds != null) { this.nodeIds = nodeIds; } if (logNames != null) { this.logNames = logNames; } this.severity = severity; } /** * Copy constructor */ protected LogRequestBase(LogRequestBase logRequestInfo) { nodeIds = logRequestInfo.getNodeIds(); logNames = logRequestInfo.getLogNames(); severity = logRequestInfo.getSeverity(); } /** * Getter for the list of Bourne node ids. * * @return The list of Bourne node ids. */ @XmlElement(name = "nodeIds") public List<String> getNodeIds() { if (nodeIds == null) { nodeIds = new ArrayList<String>(); } return nodeIds; } /** * Setter for the list of Bourne node ids. * * @param nodeIds new list of nodes. */ public void setNodeIds(List<String> nodeIds) { this.nodeIds = nodeIds; } /** * Getter for names of the logs. * * @return The names of the logs. */ @XmlElement(name = "logNames") public List<String> getLogNames() { if (logNames == null) { logNames = new ArrayList<String>(); } return logNames; } /** * Setter for names of the logs. */ public void setLogNames(List<String> logNames) { this.logNames = logNames; } /** * Getter for the log severity level. * * @return The log severity level. */ @XmlElement(name = "severity") public LogSeverity getSeverity() { return severity; } /** * Setter for the log severity level. */ public void setSeverity(LogSeverity severity) { this.severity = severity; } }