Last active
April 28, 2016 18:12
-
-
Save greghelton/0976df18825c84d17ee9ab1a13d2e24c to your computer and use it in GitHub Desktop.
The beta version of reactive programming is the traditional pub/sub app. It seems plausible that two instances of the same class may want to be in a pub/sub relationship so I wanted to code a class that would provide that.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.frisco.pubsub; | |
import java.util.Observable; | |
import java.util.Observer; | |
public class PubSubApp extends Observable implements Observer { | |
String name; | |
PubSubApp(String name) { | |
this.name = name; | |
this.setChanged(); | |
} | |
@Override | |
public void update(Observable observable, Object arg) { | |
System.out.println( "this= " + this.name ); | |
System.out.println( "observable=" + ((PubSubApp)observable).name ); | |
} | |
public static void main(String[] args) { | |
Observable observable = new PubSubApp("observable"); | |
Observer observer1 = new PubSubApp("observer1"); | |
Observer observer2 = new PubSubApp("observer2"); | |
observable.addObserver(observer1); | |
observable.addObserver(observer2); | |
System.out.println("count=" + observable.countObservers()); | |
observable.notifyObservers(); | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
count=2 | |
this= observer2 | |
observable=observable | |
this= observer1 | |
observable=observable |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment