2N/A * The contents of this file are subject to the terms of the 2N/A * Common Development and Distribution License (the "License"). 2N/A * You may not use this file except in compliance with the License. 2N/A * See the License for the specific language governing permissions 2N/A * and limitations under the License. 2N/A * When distributing Covered Code, include this CDDL HEADER in each 2N/A * If applicable, add the following below this CDDL HEADER, with the 2N/A * fields enclosed by brackets "[]" replaced with your own identifying 2N/A * information: Portions Copyright [yyyy] [name of copyright owner] 2N/A * Copyright 2007 Sun Microsystems, Inc. All rights reserved. 2N/A * Use is subject to license terms. 2N/A * ident "%Z%%M% %I% %E% SMI" 2N/A * An error encountered in the native DTrace library while tracing probe 2N/A * data. Each of the fault name constants beginning with {@code 2N/A * DTRACEFLT_} identifies a specific fault with a name that is 2N/A * guaranteed not to change across API versions. 2N/A * @see ConsumerListener#errorEncountered(ErrorEvent e) 2N/A * @author Tom Erickson 2N/A * Invalid alignment. 2N/A * Illegal operation. 2N/A * Out of scratch space. 2N/A * Invalid kernel access. 2N/A * Invalid user access. 2N/A * Tuple stack overflow. 2N/A * Library-level fault. 2N/A "enabledProbeID",
"CPU",
"action",
"offset",
2N/A "fault",
"address",
"defaultMessage"});
2N/A * Creates a DTrace error with the given properties. Supports XML 2N/A * @param pdesc probe description that identifies the error-inducing 2N/A * probe among all the probes on the system 2N/A * @param enabledProbeID identifies the error-inducing probe among 2N/A * all probes enabled by the same {@link Consumer} 2N/A * @param errorCPU non-negative ID of the CPU where the error was 2N/A * encountered, or a negative number if the CPU is unknown 2N/A * @param errorAction integer that identifies the error-inducing 2N/A * action as the nth action (starting at one) in the error-inducing 2N/A * probe, or zero if the error is in the predicate rather than in an 2N/A * @param errorOffset error offset in compiled DTrace Intermediate 2N/A * Format (DIF), or a negative number if the offset is not available 2N/A * @param faultName name of the specific fault, or {@code null} 2N/A * if the fault is unknown to the Java DTrace API 2N/A * @param faultAddress address of fault, or -1 if address is not 2N/A * applicable to the specific fault 2N/A * @param errorMessage default message from the native DTrace 2N/A * library preconstructed from the properties of this error 2N/A * @throws NullPointerException if the given probe description or 2N/A * default message is {@code null} 2N/A "enabled probe description is null");
2N/A * Gets the probe description that identifies the error-inducing 2N/A * probe among all the probes on the system. 2N/A * @return non-null probe description 2N/A * Gets the enabled probe ID. The "epid" is different from {@link 2N/A * ProbeDescription#getID()} because it identifies a probe among all 2N/A * the probes enabled by a {@link Consumer}, rather than among all 2N/A * the probes on the system. 2N/A * @return the enabled probe ID 2N/A * Gets the CPU that encountered the error. 2N/A * @return non-negative CPU ID, or a negative number if the CPU is 2N/A * Gets the error-inducing action as the <i>nth</i> action (starting 2N/A * at one) in the error-inducing probe, or zero if the error is in 2N/A * the predicate rather than in an action. Note that some actions 2N/A * in a D program consist of multiple actions internally within the 2N/A * @return zero if the error is in the probe predicate, otherwise 2N/A * the <i>nth</i> action (<i>n</i> starting at one) from the start 2N/A * of the probe that induced the error 2N/A * Gets the error offset in compiled DTrace Intermediate Format 2N/A * (DIF), or a negative number if the offset is not available. 2N/A * @return the error offset in compiled DTrace Intermediate Format 2N/A * (DIF), or a negative number if the offset is not available 2N/A * Gets the name identifying the specific fault. The names are 2N/A * guaranteed not to change across API versions as long as the fault 2N/A * cases they identify still exist. 2N/A * @return name of the specific fault or {@code null} if the 2N/A * fault is unknown to the Java DTrace API 2N/A * Gets the address of the fault, if any. 2N/A * @return address of fault, or -1 if address is not applicable to 2N/A * the specific fault (the fault is not one of {@link 2N/A * #DTRACEFLT_BADADDR} or {@link #DTRACEFLT_BADALIGN}) 2N/A * Gets the default message from the native DTrace library 2N/A * preconstructed from the properties of this error. 2N/A * @return non-null preconstructed message 2N/A // check class invariants 2N/A * Gets a string representation of this error useful for logging and 2N/A * not intended for display. The exact details of the 2N/A * representation are unspecified and subject to change, but the 2N/A * following format may be regarded as typical: 2N/A * class-name[property1 = value1, property2 = value2]