/** * Copyright (c) 2015-2016 Inria * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * -Fawaz Paraiso <fawaz.paraiso@inria.fr> * - Philippe Merle <philippe.merle@inria.fr> */ package org.occiware.clouddesigner.occi.docker; import org.occiware.clouddesigner.occi.infrastructure.Compute; /** * <!-- begin-user-doc --> * A representation of the model object '<em><b>Machine</b></em>'. * <!-- end-user-doc --> * * <p> * The following features are supported: * </p> * <ul> * <li>{@link org.occiware.clouddesigner.occi.docker.Machine#getName <em>Name</em>}</li> * <li>{@link org.occiware.clouddesigner.occi.docker.Machine#getEngine_install_url <em>Engine install url</em>}</li> * <li>{@link org.occiware.clouddesigner.occi.docker.Machine#getEngine_opt <em>Engine opt</em>}</li> * <li>{@link org.occiware.clouddesigner.occi.docker.Machine#getEngine_insecure_registry <em>Engine insecure registry</em>}</li> * <li>{@link org.occiware.clouddesigner.occi.docker.Machine#getEngine_registry_mirror <em>Engine registry mirror</em>}</li> * <li>{@link org.occiware.clouddesigner.occi.docker.Machine#getEngine_label <em>Engine label</em>}</li> * <li>{@link org.occiware.clouddesigner.occi.docker.Machine#getEngine_storage_driver <em>Engine storage driver</em>}</li> * <li>{@link org.occiware.clouddesigner.occi.docker.Machine#getEngine_env <em>Engine env</em>}</li> * <li>{@link org.occiware.clouddesigner.occi.docker.Machine#isSwarm <em>Swarm</em>}</li> * <li>{@link org.occiware.clouddesigner.occi.docker.Machine#getSwarm_image <em>Swarm image</em>}</li> * <li>{@link org.occiware.clouddesigner.occi.docker.Machine#isSwarm_master <em>Swarm master</em>}</li> * <li>{@link org.occiware.clouddesigner.occi.docker.Machine#getSwarm_discovery <em>Swarm discovery</em>}</li> * <li>{@link org.occiware.clouddesigner.occi.docker.Machine#getSwarm_strategy <em>Swarm strategy</em>}</li> * <li>{@link org.occiware.clouddesigner.occi.docker.Machine#getSwarm_opt <em>Swarm opt</em>}</li> * <li>{@link org.occiware.clouddesigner.occi.docker.Machine#getSwarm_host <em>Swarm host</em>}</li> * <li>{@link org.occiware.clouddesigner.occi.docker.Machine#getSwarm_addr <em>Swarm addr</em>}</li> * <li>{@link org.occiware.clouddesigner.occi.docker.Machine#getSwarm_experimental <em>Swarm experimental</em>}</li> * <li>{@link org.occiware.clouddesigner.occi.docker.Machine#getTls_san <em>Tls san</em>}</li> * </ul> * * @see org.occiware.clouddesigner.occi.docker.DockerPackage#getMachine() * @model annotation="OCCIE2Ecore title='Machine Resource'" * @generated */ public interface Machine extends Compute { /** * Returns the value of the '<em><b>Name</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Name</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Name</em>' attribute. * @see #setName(String) * @see org.occiware.clouddesigner.occi.docker.DockerPackage#getMachine_Name() * @model dataType="org.occiware.clouddesigner.occi.String" required="true" * annotation="OCCIE2Ecore description='null'" * @generated */ String getName(); /** * Sets the value of the '{@link org.occiware.clouddesigner.occi.docker.Machine#getName <em>Name</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Name</em>' attribute. * @see #getName() * @generated */ void setName(String value); /** * Returns the value of the '<em><b>Engine install url</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Engine install url</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Engine install url</em>' attribute. * @see #setEngine_install_url(String) * @see org.occiware.clouddesigner.occi.docker.DockerPackage#getMachine_Engine_install_url() * @model dataType="org.occiware.clouddesigner.occi.String" * annotation="OCCIE2Ecore description='Custom URL to use for engine installation [$MACHINE_DOCKER_INSTALL_URL]'" * @generated */ String getEngine_install_url(); /** * Sets the value of the '{@link org.occiware.clouddesigner.occi.docker.Machine#getEngine_install_url <em>Engine install url</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Engine install url</em>' attribute. * @see #getEngine_install_url() * @generated */ void setEngine_install_url(String value); /** * Returns the value of the '<em><b>Engine opt</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Engine opt</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Engine opt</em>' attribute. * @see #setEngine_opt(String) * @see org.occiware.clouddesigner.occi.docker.DockerPackage#getMachine_Engine_opt() * @model dataType="org.occiware.clouddesigner.occi.String" * annotation="OCCIE2Ecore description='Specify arbitrary flags to include with the created engine in the form flag=value'" * @generated */ String getEngine_opt(); /** * Sets the value of the '{@link org.occiware.clouddesigner.occi.docker.Machine#getEngine_opt <em>Engine opt</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Engine opt</em>' attribute. * @see #getEngine_opt() * @generated */ void setEngine_opt(String value); /** * Returns the value of the '<em><b>Engine insecure registry</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Engine insecure registry</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Engine insecure registry</em>' attribute. * @see #setEngine_insecure_registry(String) * @see org.occiware.clouddesigner.occi.docker.DockerPackage#getMachine_Engine_insecure_registry() * @model dataType="org.occiware.clouddesigner.occi.String" * annotation="OCCIE2Ecore description='Specify insecure registries to allow with the created engine'" * @generated */ String getEngine_insecure_registry(); /** * Sets the value of the '{@link org.occiware.clouddesigner.occi.docker.Machine#getEngine_insecure_registry <em>Engine insecure registry</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Engine insecure registry</em>' attribute. * @see #getEngine_insecure_registry() * @generated */ void setEngine_insecure_registry(String value); /** * Returns the value of the '<em><b>Engine registry mirror</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Engine registry mirror</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Engine registry mirror</em>' attribute. * @see #setEngine_registry_mirror(String) * @see org.occiware.clouddesigner.occi.docker.DockerPackage#getMachine_Engine_registry_mirror() * @model dataType="org.occiware.clouddesigner.occi.String" * annotation="OCCIE2Ecore description='Specify registry mirrors to use [$ENGINE_REGISTRY_MIRROR]'" * @generated */ String getEngine_registry_mirror(); /** * Sets the value of the '{@link org.occiware.clouddesigner.occi.docker.Machine#getEngine_registry_mirror <em>Engine registry mirror</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Engine registry mirror</em>' attribute. * @see #getEngine_registry_mirror() * @generated */ void setEngine_registry_mirror(String value); /** * Returns the value of the '<em><b>Engine label</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Engine label</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Engine label</em>' attribute. * @see #setEngine_label(String) * @see org.occiware.clouddesigner.occi.docker.DockerPackage#getMachine_Engine_label() * @model dataType="org.occiware.clouddesigner.occi.String" * annotation="OCCIE2Ecore description='Specify labels for the created engine'" * @generated */ String getEngine_label(); /** * Sets the value of the '{@link org.occiware.clouddesigner.occi.docker.Machine#getEngine_label <em>Engine label</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Engine label</em>' attribute. * @see #getEngine_label() * @generated */ void setEngine_label(String value); /** * Returns the value of the '<em><b>Engine storage driver</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Engine storage driver</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Engine storage driver</em>' attribute. * @see #setEngine_storage_driver(String) * @see org.occiware.clouddesigner.occi.docker.DockerPackage#getMachine_Engine_storage_driver() * @model dataType="org.occiware.clouddesigner.occi.String" * annotation="OCCIE2Ecore description='Specify a storage driver to use with the engine'" * @generated */ String getEngine_storage_driver(); /** * Sets the value of the '{@link org.occiware.clouddesigner.occi.docker.Machine#getEngine_storage_driver <em>Engine storage driver</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Engine storage driver</em>' attribute. * @see #getEngine_storage_driver() * @generated */ void setEngine_storage_driver(String value); /** * Returns the value of the '<em><b>Engine env</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Engine env</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Engine env</em>' attribute. * @see #setEngine_env(String) * @see org.occiware.clouddesigner.occi.docker.DockerPackage#getMachine_Engine_env() * @model dataType="org.occiware.clouddesigner.occi.String" * annotation="OCCIE2Ecore description='Specify environment variables to set in the engine'" * @generated */ String getEngine_env(); /** * Sets the value of the '{@link org.occiware.clouddesigner.occi.docker.Machine#getEngine_env <em>Engine env</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Engine env</em>' attribute. * @see #getEngine_env() * @generated */ void setEngine_env(String value); /** * Returns the value of the '<em><b>Swarm</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Swarm</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Swarm</em>' attribute. * @see #setSwarm(boolean) * @see org.occiware.clouddesigner.occi.docker.DockerPackage#getMachine_Swarm() * @model dataType="org.occiware.clouddesigner.occi.Boolean" * annotation="OCCIE2Ecore description='Configure Machine with Swarm'" * @generated */ boolean isSwarm(); /** * Sets the value of the '{@link org.occiware.clouddesigner.occi.docker.Machine#isSwarm <em>Swarm</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Swarm</em>' attribute. * @see #isSwarm() * @generated */ void setSwarm(boolean value); /** * Returns the value of the '<em><b>Swarm image</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Swarm image</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Swarm image</em>' attribute. * @see #setSwarm_image(String) * @see org.occiware.clouddesigner.occi.docker.DockerPackage#getMachine_Swarm_image() * @model dataType="org.occiware.clouddesigner.occi.String" * annotation="OCCIE2Ecore description='Specify Docker image to use for Swarm [$MACHINE_SWARM_IMAGE]'" * @generated */ String getSwarm_image(); /** * Sets the value of the '{@link org.occiware.clouddesigner.occi.docker.Machine#getSwarm_image <em>Swarm image</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Swarm image</em>' attribute. * @see #getSwarm_image() * @generated */ void setSwarm_image(String value); /** * Returns the value of the '<em><b>Swarm master</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Swarm master</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Swarm master</em>' attribute. * @see #setSwarm_master(boolean) * @see org.occiware.clouddesigner.occi.docker.DockerPackage#getMachine_Swarm_master() * @model dataType="org.occiware.clouddesigner.occi.Boolean" * annotation="OCCIE2Ecore description='Configure Machine to be a Swarm master'" * @generated */ boolean isSwarm_master(); /** * Sets the value of the '{@link org.occiware.clouddesigner.occi.docker.Machine#isSwarm_master <em>Swarm master</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Swarm master</em>' attribute. * @see #isSwarm_master() * @generated */ void setSwarm_master(boolean value); /** * Returns the value of the '<em><b>Swarm discovery</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Swarm discovery</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Swarm discovery</em>' attribute. * @see #setSwarm_discovery(String) * @see org.occiware.clouddesigner.occi.docker.DockerPackage#getMachine_Swarm_discovery() * @model dataType="org.occiware.clouddesigner.occi.String" * annotation="OCCIE2Ecore description='Discovery service to use with Swarm'" * @generated */ String getSwarm_discovery(); /** * Sets the value of the '{@link org.occiware.clouddesigner.occi.docker.Machine#getSwarm_discovery <em>Swarm discovery</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Swarm discovery</em>' attribute. * @see #getSwarm_discovery() * @generated */ void setSwarm_discovery(String value); /** * Returns the value of the '<em><b>Swarm strategy</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Swarm strategy</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Swarm strategy</em>' attribute. * @see #setSwarm_strategy(String) * @see org.occiware.clouddesigner.occi.docker.DockerPackage#getMachine_Swarm_strategy() * @model dataType="org.occiware.clouddesigner.occi.String" * annotation="OCCIE2Ecore description='Define a default scheduling strategy for Swarm'" * @generated */ String getSwarm_strategy(); /** * Sets the value of the '{@link org.occiware.clouddesigner.occi.docker.Machine#getSwarm_strategy <em>Swarm strategy</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Swarm strategy</em>' attribute. * @see #getSwarm_strategy() * @generated */ void setSwarm_strategy(String value); /** * Returns the value of the '<em><b>Swarm opt</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Swarm opt</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Swarm opt</em>' attribute. * @see #setSwarm_opt(String) * @see org.occiware.clouddesigner.occi.docker.DockerPackage#getMachine_Swarm_opt() * @model dataType="org.occiware.clouddesigner.occi.String" * annotation="OCCIE2Ecore description='Define arbitrary flags for swarm'" * @generated */ String getSwarm_opt(); /** * Sets the value of the '{@link org.occiware.clouddesigner.occi.docker.Machine#getSwarm_opt <em>Swarm opt</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Swarm opt</em>' attribute. * @see #getSwarm_opt() * @generated */ void setSwarm_opt(String value); /** * Returns the value of the '<em><b>Swarm host</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Swarm host</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Swarm host</em>' attribute. * @see #setSwarm_host(String) * @see org.occiware.clouddesigner.occi.docker.DockerPackage#getMachine_Swarm_host() * @model dataType="org.occiware.clouddesigner.occi.String" * annotation="OCCIE2Ecore description='ip/socket to listen on for Swarm master'" * @generated */ String getSwarm_host(); /** * Sets the value of the '{@link org.occiware.clouddesigner.occi.docker.Machine#getSwarm_host <em>Swarm host</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Swarm host</em>' attribute. * @see #getSwarm_host() * @generated */ void setSwarm_host(String value); /** * Returns the value of the '<em><b>Swarm addr</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Swarm addr</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Swarm addr</em>' attribute. * @see #setSwarm_addr(String) * @see org.occiware.clouddesigner.occi.docker.DockerPackage#getMachine_Swarm_addr() * @model dataType="org.occiware.clouddesigner.occi.String" * annotation="OCCIE2Ecore description='addr to advertise for Swarm (default: detect and use the machine IP)'" * @generated */ String getSwarm_addr(); /** * Sets the value of the '{@link org.occiware.clouddesigner.occi.docker.Machine#getSwarm_addr <em>Swarm addr</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Swarm addr</em>' attribute. * @see #getSwarm_addr() * @generated */ void setSwarm_addr(String value); /** * Returns the value of the '<em><b>Swarm experimental</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Swarm experimental</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Swarm experimental</em>' attribute. * @see #setSwarm_experimental(String) * @see org.occiware.clouddesigner.occi.docker.DockerPackage#getMachine_Swarm_experimental() * @model dataType="org.occiware.clouddesigner.occi.String" * annotation="OCCIE2Ecore description='Enable Swarm experimental features'" * @generated */ String getSwarm_experimental(); /** * Sets the value of the '{@link org.occiware.clouddesigner.occi.docker.Machine#getSwarm_experimental <em>Swarm experimental</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Swarm experimental</em>' attribute. * @see #getSwarm_experimental() * @generated */ void setSwarm_experimental(String value); /** * Returns the value of the '<em><b>Tls san</b></em>' attribute. * <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Tls san</em>' attribute isn't clear, * there really should be more of a description here... * </p> * <!-- end-user-doc --> * @return the value of the '<em>Tls san</em>' attribute. * @see #setTls_san(String) * @see org.occiware.clouddesigner.occi.docker.DockerPackage#getMachine_Tls_san() * @model dataType="org.occiware.clouddesigner.occi.String" * annotation="OCCIE2Ecore description='Support extra SANs for TLS certs'" * @generated */ String getTls_san(); /** * Sets the value of the '{@link org.occiware.clouddesigner.occi.docker.Machine#getTls_san <em>Tls san</em>}' attribute. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @param value the new value of the '<em>Tls san</em>' attribute. * @see #getTls_san() * @generated */ void setTls_san(String value); } // Machine