summaryrefslogtreecommitdiff
path: root/usr/src/lib/libdtrace_jni/java
diff options
context:
space:
mode:
authortomee <none@none>2007-01-24 20:35:40 -0800
committertomee <none@none>2007-01-24 20:35:40 -0800
commit91cfa10a8e55050a5103c4b2e83b0bf8d783a7cb (patch)
treef4e25988949e2740e2e0f57190db30eed5373ccb /usr/src/lib/libdtrace_jni/java
parent52f4394b704526bb3aa41e8729fd03e754732822 (diff)
downloadillumos-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')
-rw-r--r--usr/src/lib/libdtrace_jni/java/docs/html/fast.html67
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Aggregation.java8
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/AggregationRecord.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/AvgValue.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/CountValue.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/DataEvent.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Drop.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/DropEvent.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Error.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ErrorEvent.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/InterfaceAttributes.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/KernelStackRecord.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/KernelSymbolRecord.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/LocalConsumer.java3
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/LogDistribution.java8
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Option.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/PrintaRecord.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/PrintfRecord.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Probe.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProbeData.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProbeInfo.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProcessEvent.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProcessState.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/Program.java22
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ProgramInfo.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/ScalarRecord.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/StackFrame.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/UserStackRecord.java4
-rw-r--r--usr/src/lib/libdtrace_jni/java/src/org/opensolaris/os/dtrace/UserSymbolRecord.java6
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) {