12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package jdk.jfr.api.flightrecorder;
27
28 import jdk.jfr.FlightRecorder;
29 import jdk.jfr.Recording;
30 import jdk.jfr.RecordingState;
31
32 /*
33 * @test
34 * @key jfr
35 * @library /test/lib /test/jdk
36 * @run main/othervm jdk.jfr.api.flightrecorder.TestListener
37 */
38 public class TestListener {
39
40 public static void main(String[] args) throws Throwable {
41 MyListener listener1 = new MyListener();
42 MyListener listener2 = new MyListener();
43 FlightRecorder.addListener(listener1);
44 FlightRecorder.addListener(listener2);
45
46 Recording r1 = new Recording();
47 listener1.verifyState(0, RecordingState.NEW);
48 listener2.verifyState(0, RecordingState.NEW);
49
50 r1.start();
51 listener1.verifyState(1, RecordingState.RUNNING);
52 listener2.verifyState(1, RecordingState.RUNNING);
53
54 FlightRecorder.removeListener(listener1); // listener1 should not get more callbacks.
|
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package jdk.jfr.api.flightrecorder;
27
28 import jdk.jfr.FlightRecorder;
29 import jdk.jfr.Recording;
30 import jdk.jfr.RecordingState;
31
32 /**
33 * @test
34 * @key jfr
35 * @requires vm.hasJFR
36 * @library /test/lib /test/jdk
37 * @run main/othervm jdk.jfr.api.flightrecorder.TestListener
38 */
39 public class TestListener {
40
41 public static void main(String[] args) throws Throwable {
42 MyListener listener1 = new MyListener();
43 MyListener listener2 = new MyListener();
44 FlightRecorder.addListener(listener1);
45 FlightRecorder.addListener(listener2);
46
47 Recording r1 = new Recording();
48 listener1.verifyState(0, RecordingState.NEW);
49 listener2.verifyState(0, RecordingState.NEW);
50
51 r1.start();
52 listener1.verifyState(1, RecordingState.RUNNING);
53 listener2.verifyState(1, RecordingState.RUNNING);
54
55 FlightRecorder.removeListener(listener1); // listener1 should not get more callbacks.
|