001    /*
002     * QueueInfo.java
003     *
004     * Created on May 18, 2004, 11:31 AM
005     *
006     * This file is part of the STAR Scheduler.
007     * Copyright (c) 2002-2006 STAR Collaboration - Brookhaven National Laboratory
008     *
009     * STAR Scheduler is free software; you can redistribute it and/or modify
010     * it under the terms of the GNU General Public License as published by
011     * the Free Software Foundation; either version 2 of the License, or
012     * (at your option) any later version.
013     *
014     * STAR Scheduler is distributed in the hope that it will be useful,
015     * but WITHOUT ANY WARRANTY; without even the implied warranty of
016     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
017     * GNU General Public License for more details.
018     *
019     * You should have received a copy of the GNU General Public License
020     * along with STAR Scheduler; if not, write to the Free Software
021     * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
022     */
023    
024    package gov.bnl.star.offline.scheduler.monitor;
025    
026    /**
027     *
028     * @author  stratos
029     */
030    public interface QueueInfo {
031    
032    // Returns the Queue Name, ex. star_cas_dd
033        String getQueueName();
034    
035    // Number of Running Jobs in the Queue
036        int getRunningJobs();
037        
038    // Number of Waiting Jobs in the Queue
039        int getWaitingJobs();
040        
041    // Total Jobs (Running + Waiting) in the Queue    
042        int getTotalJobs();
043        
044    // Estimated time between Job Submission till the 
045    // Job starts its Execution (in secs)
046        double getEstimatedResponseTime();
047        
048    // Worst time between Job Submission till the Job starts
049    // its execution (in secs)
050        double getWorstResponseTime();
051        
052    // Number of Free CPUs available 
053        int getFreeCPUs();
054        
055    // The State a Queue is in (Closed, Production, ...)
056        String getStatus();
057        
058        double getAverageRunTime();
059        
060    }