diff options
author | tomee <none@none> | 2007-01-24 20:35:40 -0800 |
---|---|---|
committer | tomee <none@none> | 2007-01-24 20:35:40 -0800 |
commit | 91cfa10a8e55050a5103c4b2e83b0bf8d783a7cb (patch) | |
tree | f4e25988949e2740e2e0f57190db30eed5373ccb /usr/src/lib/libdtrace_jni/java | |
parent | 52f4394b704526bb3aa41e8729fd03e754732822 (diff) | |
download | illumos-gate-91cfa10a8e55050a5103c4b2e83b0bf8d783a7cb.tar.gz |
6513863 java_api tests assume that PATH includes current directory
6515452 Program.File deserialization is broken
Diffstat (limited to 'usr/src/lib/libdtrace_jni/java')
29 files changed, 99 insertions, 107 deletions
diff --git a/usr/src/lib/libdtrace_jni/java/docs/html/fast.html b/usr/src/lib/libdtrace_jni/java/docs/html/fast.html index 1f5104723c..e5318835c8 100644 --- a/usr/src/lib/libdtrace_jni/java/docs/html/fast.html +++ b/usr/src/lib/libdtrace_jni/java/docs/html/fast.html @@ -1,5 +1,5 @@ <!-- - Copyright 2006 Sun Microsystems, Inc. All rights reserved. + Copyright 2007 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. ident "%Z%%M% %I% %E% SMI" @@ -133,7 +133,7 @@ Here is a simple example that runs a given D script:<br> <br> Compile the test program as follows: <pre><tt> - java -cp dtrace.jar TestAPI.java + javac -cp /usr/share/lib/java/dtrace.jar TestAPI.java </tt></pre> <br> <h4><a name="Running_hello.d_Script"></a>Running the <tt>hello.d</tt> Script</h4> @@ -149,19 +149,11 @@ simple example that prints "hello, world" and exits:<br> </tt></pre> <br> Run as follows:<br> -On i86:<br> <pre><tt> - java -cp .:dtrace.jar TestAPI hello.d + java -cp .:/usr/share/lib/java/dtrace.jar TestAPI hello.d </tt></pre> <br> -On sparc you need to add the <tt>-d64</tt> option to java: -<pre><tt> - java -d64 -cp .:dtrace.jar TestAPI hello.d</span><br> -</tt></pre> -<br> -You may need to set <tt>LD_LIBRARY_PATH</tt> so that Java can find -<tt>libdtrace_jni.so</tt> on your system. The output should look like -this: +The output should look like this: <pre><tt> org.opensolaris.os.dtrace.ProbeData[epid = 1, cpu = 1, enabledProbeDescription = dtrace:::BEGIN, flow = null, records = @@ -218,16 +210,10 @@ instead of one (<tt>$1</tt>) forces expansion of the macro variable to type string.<br> <br> To run the example Java program using the above D script, you need to -specify an argument to the <tt>execname</tt> placeholder. To be sure of -getting output, let's use "java":<br> -On i86: +specify an argument to the <tt>execname</tt> placeholder, such as +"java":<br> <pre><tt> - java -cp .:dtrace.jar TestAPI syscall.d java -</tt></pre> -<br> -On sparc: -<pre><tt> - java -d64 -cp .:dtrace.jar TestAPI syscall.d java + java -cp .:/usr/share/lib/java/dtrace.jar TestAPI syscall.d java </tt></pre> <br> A data record generated by the <tt>printa()</tt> action is printed to @@ -272,8 +258,8 @@ CPU (a three-element tuple). In this example we drop the <tt>tick</tt> probe to demonstrate a more convenient way to get aggregation data without the use of the <tt>printa()</tt> action. The <a href="../api/org/opensolaris/os/dtrace/Consumer.html#getAggregate%28%29"> -<tt>getAggregate()</tt></a> method allows us to get all aggregations at -once on a programmatic interval.<br> +<tt>getAggregate()</tt></a> method allows us to get a read-consistent +snapshot of all aggregations at once on a programmatic interval.<br> <b>Java program (<a href="../examples/TestAPI2.java">TestAPI2.java</a>)</b> <pre><tt><font color=#aaaaaa> ... @@ -302,17 +288,10 @@ once on a programmatic interval.<br> <br> Compile and run: <pre><tt> - javac -cp dtrace.jar TestAPI2.java -</tt></pre> -<br> -On i86: -<pre><tt> - java -cp .:dtrace.jar TestAPI2 intrstat.d + javac -cp /usr/share/lib/java/dtrace.jar TestAPI2.java </tt></pre> -<br> -On sparc: <pre><tt> - java -d64 -cp .:dtrace.jar TestAPI2 intrstat.d + java -cp .:/usr/share/lib/java/dtrace.jar TestAPI2 intrstat.d </tt></pre> <br> Try removing the <tt>tick</tt> probe from the <tt>syscall.d</tt> example @@ -322,7 +301,7 @@ By default, the requested aggregate includes every aggregation and accumulates running totals. To display values per time interval (instead of running totals), clear the aggregations each time you call <tt>getAggregate()</tt>. Clearing an aggregation resets all counts to -zero without removing any tuples. The following modification to the +zero without removing any elements. The following modification to the example above clears all aggregations: <pre><tt><font color=#aaaaaa> // a = consumer.getAggregate();</font> @@ -368,8 +347,7 @@ brackets and aggregate only a single value: <br> The resulting singleton <a href="../api/org/opensolaris/os/dtrace/Aggregation.html"> -<tt>Aggregation</tt></a> instance has one record that may be obtained as -follows: +<tt>Aggregation</tt></a> has one record that may be obtained as follows: <pre><tt> Aggregate a = consumer.getAggregate(); Aggregation total = a.getAggregation("total"); @@ -387,9 +365,9 @@ process from the very beginning of its execution, rather than sometime after you manually obtain its process ID. The API does this by creating a process that is initially suspended and allowed to start only after <a href="../api/org/opensolaris/os/dtrace/Consumer.html#go%28%29"> -<tt>go()</tt></a> has initiated tracing. For example, we might want to -aggregate all the system calls from start to finish made by the -<tt>date</tt> command:<br> +<tt>go()</tt></a> has initiated tracing. For example, you can aggregate +all the system calls from start to finish made by the <tt>date</tt> +command:<br> <b>D script (<a href="../examples/target.d">target.d</a>)</b> <pre><tt> syscall:::entry @@ -449,17 +427,10 @@ ended: <br> Compile and run: <pre><tt> - javac -cp dtrace.jar TestTarget.java + javac -cp /usr/share/lib/java/dtrace.jar TestTarget.java </tt></pre> -<br> -On i86: -<pre><tt> - java -cp .:dtrace.jar TestTarget target.d date -</tt></pre> -<br> -On sparc: <pre><tt> - java -d64 -cp .:dtrace.jar TestTarget target.d date + java -cp .:/usr/share/lib/java/dtrace.jar TestTarget target.d date </tt></pre> <br> The consumer exits automatically when the target <tt>date</tt> process @@ -525,7 +496,7 @@ need not remove <tt>#!/usr/sbin/dtrace -s</tt> from the top of an executable script. You may want to remove <tt>profile:::tick*</tt> clauses if you plan to use the <tt>Consumer</tt> <a href="../api/org/opensolaris/os/dtrace/Consumer.html#getAggregate%28%29"> -<tt>getAggregate()</tt></a> method and control the aggregating interval +<tt>getAggregate()</tt></a> method and control the data interval programmatically. If the script uses the pre-compiler, you will need to call the <tt>Consumer</tt> <a href="../api/org/opensolaris/os/dtrace/Consumer.html#setOption%28java.lang.String%29"> diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Aggregation.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Aggregation.java index 1ec2035619..2da77026f7 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Aggregation.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Aggregation.java @@ -152,7 +152,7 @@ public final class Aggregation implements Serializable { } } - private void + private final void validate() { if (name == null) { @@ -320,7 +320,11 @@ public final class Aggregation implements Serializable { mapRecords(records); // Check class invariants (only after defensive copy) name = Aggregate.filterUnnamedAggregationName(name); - validate(); + try { + validate(); + } catch (Exception e) { + throw new InvalidObjectException(e.getMessage()); + } } /** diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/AggregationRecord.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/AggregationRecord.java index 4ab439c4c5..a58808e4d9 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/AggregationRecord.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/AggregationRecord.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -97,7 +97,7 @@ public final class AggregationRecord implements Record, Serializable { validate(); } - private void + private final void validate() { if (tuple == null) { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/AvgValue.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/AvgValue.java index bd1257a009..83abbeda6c 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/AvgValue.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/AvgValue.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -79,7 +79,7 @@ public final class AvgValue extends AbstractAggregationValue { validate(); } - private void + private final void validate() { if (count < 0) { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/CountValue.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/CountValue.java index d7c6c39924..277290d824 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/CountValue.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/CountValue.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -68,7 +68,7 @@ public final class CountValue extends AbstractAggregationValue { validate(); } - private void + private final void validate() { long count = super.getValue().longValue(); diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/DataEvent.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/DataEvent.java index e863d127c1..6b96a96539 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/DataEvent.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/DataEvent.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -60,7 +60,7 @@ public class DataEvent extends EventObject { validate(); } - private void + private final void validate() { if (probeData == null) { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Drop.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Drop.java index a0ade2a93e..60048f5168 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Drop.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Drop.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -159,7 +159,7 @@ public final class Drop implements Serializable { validate(); } - private void + private final void validate() { if (count < 0) { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/DropEvent.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/DropEvent.java index 3a621d26ef..e4e508abce 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/DropEvent.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/DropEvent.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -58,7 +58,7 @@ public class DropEvent extends EventObject { validate(); } - private void + private final void validate() { if (drop == null) { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Error.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Error.java index b08bdb6692..7d5cb07143 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Error.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Error.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -156,7 +156,7 @@ public final class Error implements Serializable { validate(); } - private void + private final void validate() { if (probeDescription == null) { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ErrorEvent.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ErrorEvent.java index d956705ac5..0120a1a78b 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ErrorEvent.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ErrorEvent.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -60,7 +60,7 @@ public class ErrorEvent extends EventObject { validate(); } - private void + private final void validate() { if (error == null) { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/InterfaceAttributes.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/InterfaceAttributes.java index aa7ab73a81..b886bc0759 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/InterfaceAttributes.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/InterfaceAttributes.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -364,7 +364,7 @@ public final class InterfaceAttributes implements Serializable { // thrown the exception } - private void + private final void validate() { if (nameStability == null) { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/KernelStackRecord.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/KernelStackRecord.java index 7e97c91ca4..60a86657a1 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/KernelStackRecord.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/KernelStackRecord.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -167,7 +167,7 @@ public final class KernelStackRecord implements StackValueRecord, validate(); } - private void + private final void validate() { if (rawStackData == null) { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/KernelSymbolRecord.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/KernelSymbolRecord.java index 7a32427ba4..2154e98844 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/KernelSymbolRecord.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/KernelSymbolRecord.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -107,7 +107,7 @@ public final class KernelSymbolRecord implements SymbolValueRecord, validate(); } - private void + private final void validate() { if (symbol == null) { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/LocalConsumer.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/LocalConsumer.java index dd453601e4..1cb49b324a 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/LocalConsumer.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/LocalConsumer.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -411,6 +411,7 @@ public class LocalConsumer implements Consumer { p.contents = Program.getProgramString(program); p.file = program; p.validate(); + p.validateFile(); state = State.COMPILED; return p; diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/LogDistribution.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/LogDistribution.java index fb37303a01..4286a5d045 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/LogDistribution.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/LogDistribution.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -170,6 +170,10 @@ public final class LogDistribution extends Distribution throws IOException, ClassNotFoundException { s.defaultReadObject(); - initialize(); + try { + initialize(); + } catch (Exception e) { + throw new InvalidObjectException(e.getMessage()); + } } } diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Option.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Option.java index a17380d2b6..5916d3b66c 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Option.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Option.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -576,7 +576,7 @@ public final class Option implements Serializable { validate(); } - private void + private final void validate() { if (name == null) { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/PrintaRecord.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/PrintaRecord.java index e24e31896b..9e98d116bc 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/PrintaRecord.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/PrintaRecord.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -168,7 +168,7 @@ public final class PrintaRecord implements Record, Serializable { validate(); } - private void + private final void validate() { if (snaptime < 0) { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/PrintfRecord.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/PrintfRecord.java index cb2ee0cc16..333c175075 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/PrintfRecord.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/PrintfRecord.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -86,7 +86,7 @@ public final class PrintfRecord implements Record, Serializable { validate(); } - private void + private final void validate() { if (formattedString == null) { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Probe.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Probe.java index 9d80b7d2b6..5e78b7d47b 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Probe.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Probe.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -99,7 +99,7 @@ public final class Probe implements Serializable { validate(); } - private void + private final void validate() { if (description == null) { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProbeData.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProbeData.java index a57b314c89..87cc4b6b07 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProbeData.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProbeData.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -179,7 +179,7 @@ public final class ProbeData implements Serializable, Comparable <ProbeData> { validate(); } - private void + private final void validate() { if (enabledProbeDescription == null) { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProbeInfo.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProbeInfo.java index 3d88c1f205..5e348f8a31 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProbeInfo.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProbeInfo.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -102,7 +102,7 @@ public final class ProbeInfo implements Serializable { validate(); } - private void + private final void validate() { if (probeAttributes == null) { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProcessEvent.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProcessEvent.java index 0012464e4c..699b6fe8c7 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProcessEvent.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProcessEvent.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -62,7 +62,7 @@ public class ProcessEvent extends EventObject { validate(); } - private void + private final void validate() { if (processState == null) { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProcessState.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProcessState.java index 576dcfff8e..963d8d0ed8 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProcessState.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProcessState.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -175,7 +175,7 @@ public final class ProcessState implements Serializable { validate(); } - private void + private final void validate() { if (processID < 0) { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Program.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Program.java index 5a6ecce0a3..565d272d23 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Program.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Program.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -77,7 +77,7 @@ public class Program implements Serializable { // Called by LocalConsumer.compile() to ensure that only valid // instances are made accessible to users. Similarly called by // readObject to ensure that only valid instances are deserialized. - void + final void validate() { if (id < 0) { @@ -222,10 +222,9 @@ public class Program implements Serializable { // Called by LocalConsumer.compile() to ensure that only valid // instances are made accessible to users. Similarly called by // readObject to ensure that only valid instances are deserialized. - void - validate() + final void + validateFile() { - super.validate(); if (file == null) { throw new NullPointerException("file is null"); } @@ -243,6 +242,19 @@ public class Program implements Serializable { return file; } + private void + readObject(ObjectInputStream s) + throws IOException, ClassNotFoundException + { + s.defaultReadObject(); + // check class invariants + try { + validateFile(); + } catch (Exception e) { + throw new InvalidObjectException(e.getMessage()); + } + } + public String toString() { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProgramInfo.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProgramInfo.java index 0de397a804..f5963ffe4d 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProgramInfo.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProgramInfo.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -110,7 +110,7 @@ public final class ProgramInfo implements Serializable { validate(); } - private void + private final void validate() { if (minimumProbeAttributes == null) { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ScalarRecord.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ScalarRecord.java index cbeafa34df..902caad25a 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ScalarRecord.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ScalarRecord.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -105,7 +105,7 @@ public final class ScalarRecord implements ValueRecord, Serializable { validate(); } - private void + private final void validate() { if (value == null) { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/StackFrame.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/StackFrame.java index e18b937f60..32cd4c7b12 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/StackFrame.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/StackFrame.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -86,7 +86,7 @@ public final class StackFrame implements Serializable { validate(); } - private void + private final void validate() { if (frame == null) { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/UserStackRecord.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/UserStackRecord.java index 838beb4b83..2ed722cba2 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/UserStackRecord.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/UserStackRecord.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -117,7 +117,7 @@ public final class UserStackRecord implements StackValueRecord, validate(); } - private void + private final void validate() { if (processID < 0) { diff --git a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/UserSymbolRecord.java b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/UserSymbolRecord.java index b53eddef2f..7672179b31 100644 --- a/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/UserSymbolRecord.java +++ b/usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/UserSymbolRecord.java @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * * ident "%Z%%M% %I% %E% SMI" @@ -111,7 +111,7 @@ public final class UserSymbolRecord implements SymbolValueRecord, validate(); } - private void + private final void validate() { if (symbol == null) { @@ -339,7 +339,7 @@ public final class UserSymbolRecord implements SymbolValueRecord, validate(); } - private void + private final void validate() { if (processID < 0) { |