/* * Copyright 2008 the original author or authors. * * Licensed 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.rioproject.cybernode.service; import org.rioproject.impl.servicebean.ServiceBeanAdapterMBean; import java.io.IOException; /** * Provides a standard MBean to use when administering the Cybernode using JMX * * @author Ming Fang * @author Dennis Reedy */ public interface CybernodeImplMBean extends ServiceBeanAdapterMBean { /** * Get the upper limit of services that this Cybernode can instantiate * * @return The upper limit of services */ Integer getServiceLimit(); /** * Set the upper limit of services that this Cybernode can instantiate * * @param limit The upper limit of services */ void setServiceLimit(Integer limit); /** * Get the number of services that this Cybernode has instantiated * * @return The number of services the Cybernode has instantiated */ Integer getServiceCount(); /** * Get the resource's utilization. This method returns the aggregate of * all measured system utilization values * * @return The aggregate utilization as a relative value */ double getUtilization(); /** * Get whether the Cybernode supports persistent provisioning of * qualitative capabilities * * @return True if the Cybernode supports persistent provisioning of * qualitative capabilities otherwise return false */ boolean getPersistentProvisioning(); /** * Set whether the Cybernode supports persistent provisioning of * qualitative capabilities * * @param provisionEnabled If the Cybernode supports persistent * provisioning of qualitative capabilities */ void setPersistentProvisioning(boolean provisionEnabled) throws IOException; /** * Get the enlisted state of the Cybernode * * @return True if the Cybernode can be used to instantiate dynamic * application services. */ boolean isEnlisted(); }