All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.apache.hadoop.yarn.api.records.QueueInfo Maven / Gradle / Ivy

There is a newer version: 3.4.0
Show newest version
/**
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you 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.apache.hadoop.yarn.api.records;

import java.util.List;

import org.apache.hadoop.classification.InterfaceAudience.Private;
import org.apache.hadoop.classification.InterfaceAudience.Public;
import org.apache.hadoop.classification.InterfaceStability.Stable;
import org.apache.hadoop.classification.InterfaceStability.Unstable;
import org.apache.hadoop.yarn.api.ApplicationClientProtocol;
import org.apache.hadoop.yarn.util.Records;

/**
 * 

QueueInfo is a report of the runtime information of the queue.

* *

It includes information such as: *

    *
  • Queue name.
  • *
  • Capacity of the queue.
  • *
  • Maximum capacity of the queue.
  • *
  • Current capacity of the queue.
  • *
  • Child queues.
  • *
  • Running applications.
  • *
  • {@link QueueState} of the queue.
  • *
*

* * @see QueueState * @see ApplicationClientProtocol#getQueueInfo(org.apache.hadoop.yarn.api.protocolrecords.GetQueueInfoRequest) */ @Public @Stable public abstract class QueueInfo { @Private @Unstable public static QueueInfo newInstance(String queueName, float capacity, float maximumCapacity, float currentCapacity, List childQueues, List applications, QueueState queueState) { QueueInfo queueInfo = Records.newRecord(QueueInfo.class); queueInfo.setQueueName(queueName); queueInfo.setCapacity(capacity); queueInfo.setMaximumCapacity(maximumCapacity); queueInfo.setCurrentCapacity(currentCapacity); queueInfo.setChildQueues(childQueues); queueInfo.setApplications(applications); queueInfo.setQueueState(queueState); return queueInfo; } /** * Get the name of the queue. * @return name of the queue */ @Public @Stable public abstract String getQueueName(); @Private @Unstable public abstract void setQueueName(String queueName); /** * Get the configured capacity of the queue. * @return configured capacity of the queue */ @Public @Stable public abstract float getCapacity(); @Private @Unstable public abstract void setCapacity(float capacity); /** * Get the maximum capacity of the queue. * @return maximum capacity of the queue */ @Public @Stable public abstract float getMaximumCapacity(); @Private @Unstable public abstract void setMaximumCapacity(float maximumCapacity); /** * Get the current capacity of the queue. * @return current capacity of the queue */ @Public @Stable public abstract float getCurrentCapacity(); @Private @Unstable public abstract void setCurrentCapacity(float currentCapacity); /** * Get the child queues of the queue. * @return child queues of the queue */ @Public @Stable public abstract List getChildQueues(); @Private @Unstable public abstract void setChildQueues(List childQueues); /** * Get the running applications of the queue. * @return running applications of the queue */ @Public @Stable public abstract List getApplications(); @Private @Unstable public abstract void setApplications(List applications); /** * Get the QueueState of the queue. * @return QueueState of the queue */ @Public @Stable public abstract QueueState getQueueState(); @Private @Unstable public abstract void setQueueState(QueueState queueState); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy