added removed()-method for mote objects
This commit is contained in:
parent
d470c20029
commit
ece7919f49
3 changed files with 15 additions and 4 deletions
|
@ -24,7 +24,7 @@
|
|||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* $Id: Mote.java,v 1.8 2010/02/03 16:05:49 fros4943 Exp $
|
||||
* $Id: Mote.java,v 1.9 2010/10/12 10:58:31 fros4943 Exp $
|
||||
*/
|
||||
|
||||
package se.sics.cooja;
|
||||
|
@ -144,4 +144,8 @@ public interface Mote {
|
|||
public abstract boolean setConfigXML(Simulation simulation,
|
||||
Collection<Element> configXML, boolean visAvailable);
|
||||
|
||||
/**
|
||||
* Called when mote is removed from simulation
|
||||
*/
|
||||
public void removed();
|
||||
}
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* $Id: Simulation.java,v 1.66 2010/10/04 10:11:56 nifi Exp $
|
||||
* $Id: Simulation.java,v 1.67 2010/10/12 10:58:31 fros4943 Exp $
|
||||
*/
|
||||
|
||||
package se.sics.cooja;
|
||||
|
@ -662,7 +662,11 @@ public class Simulation extends Observable implements Runnable {
|
|||
/* Create mote using mote type */
|
||||
Mote mote = moteType.generateMote(this);
|
||||
if (mote.setConfigXML(this, element.getChildren(), visAvailable)) {
|
||||
addMote(mote);
|
||||
if (getMoteWithID(mote.getID()) != null) {
|
||||
logger.warn("Ignoring duplicate mote ID: " + mote.getID());
|
||||
} else {
|
||||
addMote(mote);
|
||||
}
|
||||
} else {
|
||||
logger.fatal("Mote was not created: " + element.getText().trim());
|
||||
throw new Exception("All motes were not recreated");
|
||||
|
@ -690,6 +694,7 @@ public class Simulation extends Observable implements Runnable {
|
|||
currentRadioMedium.unregisterMote(mote, Simulation.this);
|
||||
|
||||
/* Dispose mote interface resources */
|
||||
mote.removed();
|
||||
for (MoteInterface i: mote.getInterfaces().getInterfaces()) {
|
||||
i.removed();
|
||||
}
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* $Id: AbstractWakeupMote.java,v 1.2 2010/10/04 12:54:01 joxe Exp $
|
||||
* $Id: AbstractWakeupMote.java,v 1.3 2010/10/12 10:58:31 fros4943 Exp $
|
||||
*/
|
||||
|
||||
package se.sics.cooja.motes;
|
||||
|
@ -128,4 +128,6 @@ public abstract class AbstractWakeupMote implements Mote {
|
|||
return true;
|
||||
}
|
||||
|
||||
public void removed() {
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue