class ElastiCacheStepDefinitions {

    @When("^change ElastiCache security group from \"([^\"]*)\" to \"([^\"]*)\"$")
    public ElastiCacheStepDefinitions changeElastiCacheSecurityGroup(String secGroupFrom, String secGroupTo) throws Throwable {
        ;
        String clusterName = executionStateCache.getElastiCacheClusterName();

        if (clusterName == null || clusterName.isEmpty()) {
            throw new RuntimeException("Unable to detach security group on ElastiCache cluster, cluster in not available");
        }
        if (secGroupFrom == null || secGroupFrom.isEmpty()) {
            throw new RuntimeException("Unable to detach security group on ElastiCache instance, no security group available");
        }

        elastiCacheRaider.changeSecurityGroupId(clusterName, secGroupFrom, secGroupTo);

        return this;
    }

    public  ElastiCacheStepDefinitions();

}