How to create custom Listeners in java?

Viewed 65417

I want to know about how to set our own Listeners in java.For example I have a function that increments number from 1 to 100. i want to set a listener when the value reaches 50. How can i do that? Pls suggest me any tutorial.

5 Answers

You can use the Signals library for it. It will look like that:

interface FiftySignal{
    void on50();
}

class FiftyMaker{
    FiftySignal fiftySignal = Signals.signal(FiftySignal.class).dispatcher;

    void doIt(){
        for(int i = 0; i < 100; i++){
            if(i == 50){
                fiftySignal.on50(); // dispatching the event
            }
        }   
    }
}

class Boo{
    Signal<FiftySignal> fiftySignal = Signals.signal(FiftySignal.class);


    void bar(){
         fiftySignal.addListener(()-> System.out.println("It's 50!")); // listener
    }
}

Disclaimer: I am the author of Signals.

Related