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]
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
.*;
32 public class TestAPI2
{
36 if (args
.length
< 1) {
37 System
.err
.println("Usage: java TestAPI2 <script> " +
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
) {
55 System
.out
.println(r
);
63 consumer
.compile(file
, macroArgs
);
70 a
= consumer
.getAggregate();
71 if (!a
.asMap().isEmpty()) {
72 System
.out
.println(a
);
74 } while (consumer
.isRunning());
75 } catch (Exception e
) {