8322 nl: misleading-indentation
[unleashed/tickless.git] / usr / src / lib / libdtrace_jni / java / docs / examples / TestAPI2.java
blob2a064a401e02fd5816dc572c25abfb7d2bf23af7
1 /*
2 * CDDL HEADER START
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 * or http://www.opensolaris.org/os/licensing.
10 * See the License for the specific language governing permissions
11 * and limitations under the License.
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
19 * CDDL HEADER END
23 * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
24 * Use is subject to license terms.
26 * ident "%Z%%M% %I% %E% SMI"
29 import org.opensolaris.os.dtrace.*;
30 import java.io.File;
32 public class TestAPI2 {
33 public static void
34 main(String[] args)
36 if (args.length < 1) {
37 System.err.println("Usage: java TestAPI2 <script> " +
38 "[ macroargs... ]");
39 System.exit(2);
42 File file = new File(args[0]);
43 String[] macroArgs = new String[args.length - 1];
44 System.arraycopy(args, 1, macroArgs, 0, (args.length - 1));
46 Consumer consumer = new LocalConsumer();
47 consumer.addConsumerListener(new ConsumerAdapter() {
48 public void dataReceived(DataEvent e) {
49 // System.out.println(e.getProbeData());
50 ProbeData data = e.getProbeData();
51 java.util.List < Record > records = data.getRecords();
52 for (Record r : records) {
53 if (r instanceof ExitRecord) {
54 } else {
55 System.out.println(r);
59 });
61 try {
62 consumer.open();
63 consumer.compile(file, macroArgs);
64 consumer.enable();
65 consumer.go();
67 Aggregate a;
68 do {
69 Thread.sleep(1000);
70 a = consumer.getAggregate();
71 if (!a.asMap().isEmpty()) {
72 System.out.println(a);
74 } while (consumer.isRunning());
75 } catch (Exception e) {
76 e.printStackTrace();
77 System.exit(1);