/* * 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.ignite.spi.collision.fifoqueue; import org.apache.ignite.mxbean.MXBeanDescription; import org.apache.ignite.spi.IgniteSpiManagementMBean; /** * Management bean that provides access to the FIFO queue collision SPI configuration. */ @MXBeanDescription("MBean provides information about FIFO queue based collision SPI configuration.") public interface FifoQueueCollisionSpiMBean extends IgniteSpiManagementMBean { /** * Gets number of jobs that can be executed in parallel. * * @return Number of jobs that can be executed in parallel. */ @MXBeanDescription("Number of jobs that can be executed in parallel.") public int getParallelJobsNumber(); /** * Sets number of jobs that can be executed in parallel. * * @param num Parallel jobs number. */ @MXBeanDescription("Number of jobs that can be executed in parallel.") public void setParallelJobsNumber(int num); /** * Maximum number of jobs that are allowed to wait in waiting queue. If number * of waiting jobs ever exceeds this number, excessive jobs will be rejected. * * @return Maximum allowed number of waiting jobs. */ @MXBeanDescription("Maximum allowed number of waiting jobs.") public int getWaitingJobsNumber(); /** * Sets maximum number of jobs that are allowed to wait in waiting queue. If number * of waiting jobs ever exceeds this number, excessive jobs will be rejected. * * @param num Waiting jobs number. */ @MXBeanDescription("Maximum allowed number of waiting jobs.") public void setWaitingJobsNumber(int num); /** * Gets current number of jobs that wait for the execution. * * @return Number of jobs that wait for execution. */ @MXBeanDescription("Number of jobs that wait for execution.") public int getCurrentWaitJobsNumber(); /** * Gets current number of jobs that are active, i.e. {@code 'running + held'} jobs. * * @return Number of active jobs. */ @MXBeanDescription("Number of active jobs.") public int getCurrentActiveJobsNumber(); /** * Gets number of currently running (not {@code 'held}) jobs. * * @return Number of currently running (not {@code 'held}) jobs. */ @MXBeanDescription("Number of running jobs.") public int getCurrentRunningJobsNumber(); /** * Gets number of currently {@code 'held'} jobs. * * @return Number of currently {@code 'held'} jobs. */ @MXBeanDescription("Number of held jobs.") public int getCurrentHeldJobsNumber(); }