/*******************************************************************************
 * Copyright (c) 2012-2017 Codenvy, S.A.
 * 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:
 *   Codenvy, S.A. - initial API and implementation
 *******************************************************************************/
package org.eclipse.che.plugin.docker.machine.node;

import org.eclipse.che.api.core.ServerException;
import org.eclipse.che.api.machine.server.spi.InstanceNode;

/**
 * Provides access to operation machines need but not supported by the Docker
 *
 * @author Alexander Garagatyi
 */
public interface DockerNode extends InstanceNode {
    /**
     * Bind the whole workspace on the Node.
     *
     * @throws ServerException
     *         if error occurs on binding
     */
    void bindWorkspace() throws ServerException;

    /**
     * Unbind the workspace on Node.
     *
     * @throws ServerException
     *         if error occurs on binding
     */
    void unbindWorkspace() throws ServerException;

    @Override
    String getHost();

    /**
     * Returns IP of the node where container is deployed.
     */
    String getIp();
}

@@ -617,16 +617,94 @@
 eption;%0A
+import org.eclipse.che.api.environment.server.exception.EnvironmentException;%0A
 import o
@@ -979,32 +979,149 @@
 he Node.%0A     *%0A
+     * @throws EnvironmentException%0A     *         if environment in abnormal state because of problem with machines%0A
      * @throws S
@@ -1145,32 +1145,38 @@
    *         if 
+other 
 error occurs on 
@@ -1234,24 +1234,46 @@
 verException
+, EnvironmentException
 ;%0A%0A    /**%0A 

allow docker node throw environment exception on WS bind