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

brooklyn.entity.Effector Maven / Gradle / Ivy

package brooklyn.entity;

import java.io.Serializable;
import java.util.List;

import javax.management.MBeanOperationInfo;

/**
 * An operation of some kind, carried out by an {@link Entity}.
 *
 * Similar to the concepts in the JMX {@link MBeanOperationInfo} class.
 */
public interface Effector extends Serializable {
    /**
     * human-friendly name of the effector (although frequently this uses java method naming convention)
     */
    String getName();

    Class getReturnType();

    /**
     * canonical name of return type (in case return type does not resolve after serialization)
     */
    String getReturnTypeName();

    /**
     * parameters expected by method, including name and type, optional description and default value
     */
    List> getParameters();

    /**
     * optional description for the effector
     */
    String getDescription();

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy