Example usage for org.springframework.ide.eclipse.boot.dash.cloudfoundry CloudAppDashElement createCancelationToken

List of usage examples for org.springframework.ide.eclipse.boot.dash.cloudfoundry CloudAppDashElement createCancelationToken

Introduction

In this page you can find the example usage for org.springframework.ide.eclipse.boot.dash.cloudfoundry CloudAppDashElement createCancelationToken.

Prototype

public CancelationToken createCancelationToken() 

Source Link

Usage

From source file:org.springframework.ide.eclipse.boot.dash.cloudfoundry.CloudAppDashElement.java

@Override
public void delete(UserInteractions ui) {
    CloudFoundryBootDashModel model = getCloudModel();
    CloudAppDashElement cloudElement = this;
    cloudElement.cancelOperations();//from  w ww.j  a  v a 2s.c om
    CancelationToken cancelToken = cloudElement.createCancelationToken();
    CloudApplicationOperation operation = new CloudApplicationOperation("Deleting: " + cloudElement.getName(),
            model, cloudElement.getName(), cancelToken) {

        @Override
        protected void doCloudOp(IProgressMonitor monitor) throws Exception, OperationCanceledException {
            // Delete from CF first. Do it outside of synch block to avoid
            // deadlock
            model.getRunTarget().getClient().deleteApplication(appName);
            model.getElementConsoleManager().terminateConsole(cloudElement.getName());
            model.removeApplication(cloudElement.getName());
            cloudElement.setProject(null);
        }
    };

    // Allow deletions to occur concurrently with any other application
    // operation
    operation.setSchedulingRule(null);
    getCloudModel().runAsynch(operation, ui);
}

From source file:org.springframework.ide.eclipse.boot.dash.test.CloudFoundryBootDashModelMockingTest.java

@Test
public void stopCancelsRestartOnly() throws Exception {
    CFClientParams targetParams = CfTestTargetParams.fromEnv();
    MockCFSpace space = clientFactory.defSpace(targetParams.getOrgName(), targetParams.getSpaceName());
    IProject project = projects.createProject("to-deploy");
    final String appName = "foo";
    space.defApp(appName);//from  w ww  .ja v  a2s.  co m

    CloudFoundryBootDashModel model = harness.createCfTarget(targetParams);
    waitForApps(model, appName);
    CloudAppDashElement app = model.getApplication(appName);
    app.setProject(project);

    waitForApps(model, appName);

    clientFactory.setAppStartDelay(TimeUnit.MINUTES, 2);
    app.restartOnlyAsynch(ui, app.createCancelationToken());
    waitForState(app, RunState.STARTING, 3000);

    app.stopAsync(ui);
    waitForState(app, RunState.INACTIVE, 20000);
}