00001 00005 package edu.mit.csail.sdg.squander.examples.mock; 00006 00007 import edu.mit.csail.sdg.annotations.Ensures; 00008 import edu.mit.csail.sdg.annotations.Modifies; 00009 import edu.mit.csail.sdg.squander.Squander; 00010 00016 public class MockAddressBook implements AddressBook { 00017 00018 public MockAddressBook() { init(); } 00019 00020 @Ensures("no this.data") 00021 @Modifies("this.data") 00022 private void init() { Squander.exe(this); } 00023 00024 @Override 00025 public void setEmailAddress(String name, String email) { 00026 Squander.exe(this, new Class<?>[]{String.class, String.class}, new Object[]{name, email}); 00027 } 00028 00029 @Override 00030 public String getEmailAddress(String name) { 00031 return Squander.exe(this, new Class<?>[]{String.class}, new Object[]{name}); 00032 } 00033 00034 @Override 00035 public boolean contains(String name) { 00036 return Squander.exe(this, new Class<?>[]{String.class}, new Object[]{name}); 00037 } 00038 }