com.github.narcissujsk.openstackjsk.model.identity.v3.builder.ProjectBuilder Maven / Gradle / Ivy
The newest version!
package com.github.narcissujsk.openstackjsk.model.identity.v3.builder;
import java.util.List;
import java.util.Map;
import com.github.narcissujsk.openstackjsk.common.Buildable.Builder;
import com.github.narcissujsk.openstackjsk.model.identity.v3.Domain;
import com.github.narcissujsk.openstackjsk.model.identity.v3.Project;
/**
* A Builder which creates a identity v3 project
*
*
*/
public interface ProjectBuilder extends Builder {
/**
* @see Project#getId()
*/
ProjectBuilder id(String id);
/**
*
* @see Project#getDomainId()
*/
ProjectBuilder domainId(String domainId);
/**
* Accepts an existing domain and uses its id
*
* @see Project#getDomainId()
*/
ProjectBuilder domain(Domain domain);
/**
*
* @see Project#getDescription
*/
ProjectBuilder description(String description);
/**
* @see Project#isEnabled()
*/
ProjectBuilder enabled(boolean enabled);
/**
* @see Project#getName()
*/
ProjectBuilder name(String name);
/**
*
* @see Project#getLinks()
*/
ProjectBuilder links(Map links);
/**
*
* @see Project#getParentId()
*/
ProjectBuilder parentId(String parentId);
/**
*
* @see Project#getSubtree()
*/
ProjectBuilder subtree(String subtree);
/**
*
* @see Project#getParents()
*/
ProjectBuilder parents(String parents);
/**
*
* @see Project#getExtra(String)
*/
ProjectBuilder setExtra(String name, String value);
/**
*
* @see Project#getTags()
*/
ProjectBuilder setTags(List tags);
}