package test4observer;
public class BasketballPlayer implements IPerson {
private IContext mContext;
private String mName;
public BasketballPlayer(IContext context, String name) {
mContext = context;
mName = name;
System.out.println("new BasketballPlayer, " + mName);
}
@Override
public void say(String content) {
System.out.println(mName + " say " + content);
mContext.deliverInfo(this, content);
}
@Override
public void hear(IPerson from, String content) {
if (from == this) {
return;// ignore
}
System.out.println(mName + " hear " + from.getName() + " " + content);
if (content.contains("传")) {
say("我很独的");
playBasketball();
}
if (content.contains("独")) {
say("我走了, 你自个玩吧");
mContext.unRegister(this);
}
}
public void playBasketball() {
System.out.println(mName + " playBasketball ");
}
@Override
public String getName() {
return mName;
}
}