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

org.openstack4j.model.senlin.builder.ClusterActionCreateBuilder Maven / Gradle / Ivy

There is a newer version: 3.2.0
Show newest version
package org.openstack4j.model.senlin.builder;

import org.openstack4j.common.Buildable;
import org.openstack4j.model.senlin.ClusterActionCreate;

import java.util.ArrayList;
import java.util.Map;

/**
 * This interface describes a builder for {@link ClusterActionCreate} objects
 * 
 * @author lion
 */
public interface ClusterActionCreateBuilder extends Buildable.Builder {

	/**
	 *  Add one or more nodes, as a list, to a cluster
	 *
	 * @param addNodes the list of node
	 * @return ClusterActionCreateBuilder
	 */
	ClusterActionCreateBuilder addNodes(Map> addNodes);

	/**
	 *  Delete one or more nodes, as a list, from a cluster
	 *
	 * @param delNodes the list of node
	 * @return ClusterActionCreateBuilder
	 */
	ClusterActionCreateBuilder delNodes(Map> delNodes);

	/**
	 *  Enlarge the cluster by count number of nodes
	 *
	 * @param scaleOut count number of nodes
	 * @return ClusterActionCreateBuilder
	 */
	ClusterActionCreateBuilder scaleOut(Map scaleOut);

	/**
	 *  Shrink the cluster by count number of nodes
	 *
	 * @param scaleIn count number of nodes
	 * @return ClusterActionCreateBuilder
	 */
	ClusterActionCreateBuilder scaleIn(Map scaleIn);

	/**
	 *  Change the size of the cluster
	 *
	 * @param resize size of the cluster
	 * @return ClusterActionCreateBuilder
	 */
	ClusterActionCreateBuilder resize(Map resize);

	/**
	 *  Check the health status of a cluster
	 *
	 * @param check check info
	 * @return ClusterActionCreateBuilder
	 */
	ClusterActionCreateBuilder check(Map check);

	/**
	 *  Recover a cluster from its current unhealthy status
	 *
	 * @param recover its current unhealthy status
	 * @return ClusterActionCreateBuilder
	 */
	ClusterActionCreateBuilder recover(Map recover);

	/**
	 *  Attach a policy to a cluster
	 *
	 * @param policyAttach  parameters for the policy attachment
	 * @return ClusterActionCreateBuilder
	 */
	ClusterActionCreateBuilder policyAttach(Map policyAttach);

	/**
	 *  Detach a policy from a cluster
	 *
	 * @param policyDetach parameters for the policy attachment
	 * @return ClusterActionCreateBuilder
	 */
	ClusterActionCreateBuilder policyDetach(Map policyDetach);

	/**
	 *  Update the policy attachment
	 *
	 * @param policyUpdate property settings
	 * @return ClusterActionCreateBuilder
	 */
	ClusterActionCreateBuilder policyUpdate(Map policyUpdate);

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy