Reference name = sfCompleteNameSafe(); terminateComponent(this, sfex, name);
Reference refName = sfCompleteNameSafe(); terminateComponent(this, sfex, refName);
    public synchronized void sfDeploy() throws SmartFrogException, RemoteException {        try {            // get the list of outputs            super.sfDeploy();            outputs = ((Prim) sfResolveHere("outputs")).sfContext();            nameRef = sfCompleteName();            name = nameRef.toString();            // start the thread here because we need to make sure that when the            // constants and generators issue their values - triggered in sfStart()            // the outputer is waiting to pass them on.            outputer = new Outputer();            outputer.start();            System.out.println(name + " deployed");        } catch (SmartFrogException sfex) {            // add the context in case of failure            sfex.put(SmartFrogCoreKeys.SF_DEPLOY_FAILURE, this.sfContext);            // trigger termination of component            Reference name = sfCompleteNameSafe();            terminateComponent(this, sfex, name);            throw sfex;        }    }