feat(jdk8): move files to new folder to avoid resources compiled.
This commit is contained in:
53
jdkSrc/jdk8/com/sun/tracing/dtrace/ArgsAttributes.java
Normal file
53
jdkSrc/jdk8/com/sun/tracing/dtrace/ArgsAttributes.java
Normal file
@@ -0,0 +1,53 @@
|
||||
/*
|
||||
* Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation. Oracle designates this
|
||||
* particular file as subject to the "Classpath" exception as provided
|
||||
* by Oracle in the LICENSE file that accompanied this code.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
package com.sun.tracing.dtrace;
|
||||
|
||||
import java.lang.annotation.Target;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.annotation.ElementType;
|
||||
|
||||
|
||||
/**
|
||||
* This annotation describes the interface attributes of the probe arguments in
|
||||
* a single provider.
|
||||
*
|
||||
* This annotation can be added to a user-defined {@code Provider} specification
|
||||
* interface to set the stability attributes of the probe arguments, for
|
||||
* all the probes specified in that provider.
|
||||
* <p>
|
||||
* If this annotation is not present, the interface attributes for the
|
||||
* arguments are Private/Private/Unknown.
|
||||
* <p>
|
||||
* @see <a href="http://docs.sun.com/app/docs/doc/817-6223/6mlkidlnp?a=view">Solaris Dynamic Tracing Guide, Chapter 39: Stability</a>
|
||||
* @since 1.7
|
||||
*/
|
||||
|
||||
@Retention(RetentionPolicy.RUNTIME)
|
||||
@Target({ ElementType.TYPE })
|
||||
public @interface ArgsAttributes {
|
||||
Attributes value();
|
||||
}
|
||||
66
jdkSrc/jdk8/com/sun/tracing/dtrace/Attributes.java
Normal file
66
jdkSrc/jdk8/com/sun/tracing/dtrace/Attributes.java
Normal file
@@ -0,0 +1,66 @@
|
||||
/*
|
||||
* Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation. Oracle designates this
|
||||
* particular file as subject to the "Classpath" exception as provided
|
||||
* by Oracle in the LICENSE file that accompanied this code.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
package com.sun.tracing.dtrace;
|
||||
|
||||
import java.lang.annotation.Target;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.annotation.ElementType;
|
||||
|
||||
|
||||
/**
|
||||
* This annotation describes the interface's field attributes
|
||||
* for the probes in a provider.
|
||||
*
|
||||
* This annotation provides the contents of field-specific annotations
|
||||
* that specify the stability attributes and dependency class of a
|
||||
* particular field, for the probes in a provider.
|
||||
* <p>
|
||||
* The default interface attributes for unspecified fields is
|
||||
* Private/Private/Unknown.
|
||||
* <p>
|
||||
* @see <a href="http://docs.sun.com/app/docs/doc/817-6223/6mlkidlnp?a=view">Solaris Dynamic Tracing Guide, Chapter 39: Stability</a>
|
||||
* @since 1.7
|
||||
*/
|
||||
|
||||
@Retention(RetentionPolicy.RUNTIME)
|
||||
@Target({})
|
||||
public @interface Attributes {
|
||||
/**
|
||||
* The stability level of the name.
|
||||
*/
|
||||
StabilityLevel name() default StabilityLevel.PRIVATE;
|
||||
|
||||
/**
|
||||
* The stability level of the data.
|
||||
*/
|
||||
StabilityLevel data() default StabilityLevel.PRIVATE;
|
||||
|
||||
/**
|
||||
* The interface attribute's dependency class.
|
||||
*/
|
||||
DependencyClass dependency() default DependencyClass.UNKNOWN;
|
||||
}
|
||||
77
jdkSrc/jdk8/com/sun/tracing/dtrace/DependencyClass.java
Normal file
77
jdkSrc/jdk8/com/sun/tracing/dtrace/DependencyClass.java
Normal file
@@ -0,0 +1,77 @@
|
||||
/*
|
||||
* Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation. Oracle designates this
|
||||
* particular file as subject to the "Classpath" exception as provided
|
||||
* by Oracle in the LICENSE file that accompanied this code.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
package com.sun.tracing.dtrace;
|
||||
|
||||
/**
|
||||
* Enumeration for the DTrace dependency classes.
|
||||
*
|
||||
* @see <a href="http://docs.sun.com/app/docs/doc/817-6223/6mlkidlnp?a=view">Solaris Dynamic Tracing Guide for details, Chapter 39: Stability</a>
|
||||
* @since 1.7
|
||||
*/
|
||||
public enum DependencyClass {
|
||||
/**
|
||||
* The interface has an unknown set of architectural dependencies.
|
||||
*/
|
||||
UNKNOWN (0),
|
||||
/**
|
||||
* The interface is specific to the CPU model of the current system.
|
||||
*/
|
||||
CPU (1),
|
||||
/**
|
||||
* The interface is specific to the hardware platform of the current
|
||||
* system.
|
||||
*/
|
||||
PLATFORM (2),
|
||||
/**
|
||||
* The interface is specific to the hardware platform group of the
|
||||
* current system.
|
||||
*/
|
||||
GROUP (3),
|
||||
/**
|
||||
* The interface is specific to the instruction set architecture (ISA)
|
||||
* supported by the microprocessors on this system.
|
||||
*/
|
||||
ISA (4),
|
||||
/**
|
||||
* The interface is common to all Solaris systems regardless of the
|
||||
* underlying hardware.
|
||||
*/
|
||||
COMMON (5);
|
||||
|
||||
public String toDisplayString() {
|
||||
return toString().substring(0,1) +
|
||||
toString().substring(1).toLowerCase();
|
||||
}
|
||||
|
||||
public int getEncoding() { return encoding; }
|
||||
|
||||
private int encoding;
|
||||
|
||||
private DependencyClass(int encoding) {
|
||||
this.encoding = encoding;
|
||||
}
|
||||
}
|
||||
|
||||
51
jdkSrc/jdk8/com/sun/tracing/dtrace/FunctionAttributes.java
Normal file
51
jdkSrc/jdk8/com/sun/tracing/dtrace/FunctionAttributes.java
Normal file
@@ -0,0 +1,51 @@
|
||||
/*
|
||||
* Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation. Oracle designates this
|
||||
* particular file as subject to the "Classpath" exception as provided
|
||||
* by Oracle in the LICENSE file that accompanied this code.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
package com.sun.tracing.dtrace;
|
||||
|
||||
import java.lang.annotation.Target;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.annotation.ElementType;
|
||||
|
||||
/**
|
||||
* This annotation describes the interface attributes of the
|
||||
* {@code function} field for a single provider.
|
||||
*
|
||||
* This annotation can be added to a user-defined {@code Provider} specification
|
||||
* interface to set the stability attributes of the {@code function} field for
|
||||
* all probes specified in that provider.
|
||||
* <p>
|
||||
* If this annotation is not present, the interface attributes for the
|
||||
* {@code function} field are Private/Private/Unknown.
|
||||
* <p>
|
||||
* @see <a href="http://docs.sun.com/app/docs/doc/817-6223/6mlkidlnp?a=view">Solaris Dynamic Tracing Guide, Chapter 39: Stability</a>
|
||||
* @since 1.7
|
||||
*/
|
||||
@Retention(RetentionPolicy.RUNTIME)
|
||||
@Target({ ElementType.TYPE })
|
||||
public @interface FunctionAttributes {
|
||||
Attributes value();
|
||||
}
|
||||
47
jdkSrc/jdk8/com/sun/tracing/dtrace/FunctionName.java
Normal file
47
jdkSrc/jdk8/com/sun/tracing/dtrace/FunctionName.java
Normal file
@@ -0,0 +1,47 @@
|
||||
/*
|
||||
* Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation. Oracle designates this
|
||||
* particular file as subject to the "Classpath" exception as provided
|
||||
* by Oracle in the LICENSE file that accompanied this code.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
package com.sun.tracing.dtrace;
|
||||
|
||||
import java.lang.annotation.Target;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.annotation.ElementType;
|
||||
|
||||
/**
|
||||
* An annotation used to specify the {@code function} field for a DTrace probe.
|
||||
*
|
||||
* This annotation can be added to a method in a user-defined Provider
|
||||
* specification interface to set the {@code function} field that is used
|
||||
* for the generated DTrace probe associated with that method.
|
||||
* <p>
|
||||
* @since 1.7
|
||||
*/
|
||||
@Retention(RetentionPolicy.RUNTIME)
|
||||
@Target(ElementType.METHOD)
|
||||
public @interface FunctionName {
|
||||
String value();
|
||||
}
|
||||
|
||||
51
jdkSrc/jdk8/com/sun/tracing/dtrace/ModuleAttributes.java
Normal file
51
jdkSrc/jdk8/com/sun/tracing/dtrace/ModuleAttributes.java
Normal file
@@ -0,0 +1,51 @@
|
||||
/*
|
||||
* Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation. Oracle designates this
|
||||
* particular file as subject to the "Classpath" exception as provided
|
||||
* by Oracle in the LICENSE file that accompanied this code.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
package com.sun.tracing.dtrace;
|
||||
|
||||
import java.lang.annotation.Target;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.annotation.ElementType;
|
||||
|
||||
/**
|
||||
* This annotation is used to describe the interface attributes of the
|
||||
* {@code module} field for a single provider.
|
||||
*
|
||||
* This annotation can be added to a user-defined Provider specification
|
||||
* interface to set the stability attributes of the {@code module} field for
|
||||
* all probes specified in that provider.
|
||||
* <p>
|
||||
* If this annotation is not present, the interface attributes for the
|
||||
* {@code module} field is Private/Private/Unknown.
|
||||
* <p>
|
||||
* @see <a href="http://docs.sun.com/app/docs/doc/817-6223/6mlkidlnp?a=view">Solaris Dynamic Tracing Guide, Chapter 39: Stability</a>
|
||||
* @since 1.7
|
||||
*/
|
||||
@Retention(RetentionPolicy.RUNTIME)
|
||||
@Target({ ElementType.TYPE })
|
||||
public @interface ModuleAttributes {
|
||||
Attributes value();
|
||||
}
|
||||
47
jdkSrc/jdk8/com/sun/tracing/dtrace/ModuleName.java
Normal file
47
jdkSrc/jdk8/com/sun/tracing/dtrace/ModuleName.java
Normal file
@@ -0,0 +1,47 @@
|
||||
/*
|
||||
* Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation. Oracle designates this
|
||||
* particular file as subject to the "Classpath" exception as provided
|
||||
* by Oracle in the LICENSE file that accompanied this code.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
package com.sun.tracing.dtrace;
|
||||
|
||||
import java.lang.annotation.Target;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.annotation.ElementType;
|
||||
|
||||
/**
|
||||
* An annotation used to specify the {@code module} field for a DTrace probe.
|
||||
*
|
||||
* This annotation can be added to a method in a user-defined Provider
|
||||
* specification interface to set the {@code module} field that will be used
|
||||
* for the generated DTrace probe associated with that method.
|
||||
* <p>
|
||||
* @since 1.7
|
||||
*/
|
||||
@Retention(RetentionPolicy.RUNTIME)
|
||||
@Target(ElementType.TYPE)
|
||||
public @interface ModuleName {
|
||||
String value();
|
||||
}
|
||||
|
||||
51
jdkSrc/jdk8/com/sun/tracing/dtrace/NameAttributes.java
Normal file
51
jdkSrc/jdk8/com/sun/tracing/dtrace/NameAttributes.java
Normal file
@@ -0,0 +1,51 @@
|
||||
/*
|
||||
* Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation. Oracle designates this
|
||||
* particular file as subject to the "Classpath" exception as provided
|
||||
* by Oracle in the LICENSE file that accompanied this code.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
package com.sun.tracing.dtrace;
|
||||
|
||||
import java.lang.annotation.Target;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.annotation.ElementType;
|
||||
|
||||
/**
|
||||
* This annotation describes the interface attributes of the
|
||||
* {@code name} field for a single provider.
|
||||
*
|
||||
* This annotation can be added to a user-defined Provider specification
|
||||
* interface to set the stability attributes of the {@code name} field for
|
||||
* all probes specified in that provider.
|
||||
* <p>
|
||||
* If this annotation is not present, the interface attributes for the
|
||||
* {@code name} field will be Private/Private/Unknown.
|
||||
* <p>
|
||||
* @see <a href="http://docs.sun.com/app/docs/doc/817-6223/6mlkidlnp?a=view">Solaris Dynamic Tracing Guide, Chapter 39: Stability</a>
|
||||
* @since 1.7
|
||||
*/
|
||||
@Retention(RetentionPolicy.RUNTIME)
|
||||
@Target({ ElementType.TYPE })
|
||||
public @interface NameAttributes {
|
||||
Attributes value();
|
||||
}
|
||||
51
jdkSrc/jdk8/com/sun/tracing/dtrace/ProviderAttributes.java
Normal file
51
jdkSrc/jdk8/com/sun/tracing/dtrace/ProviderAttributes.java
Normal file
@@ -0,0 +1,51 @@
|
||||
/*
|
||||
* Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation. Oracle designates this
|
||||
* particular file as subject to the "Classpath" exception as provided
|
||||
* by Oracle in the LICENSE file that accompanied this code.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
package com.sun.tracing.dtrace;
|
||||
|
||||
import java.lang.annotation.Target;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.annotation.ElementType;
|
||||
|
||||
/**
|
||||
* This annotation is used to describe the interface attributes of the
|
||||
* {@code provider} field for a single provider.
|
||||
*
|
||||
* This annotation can be added to a user-defined Provider specification
|
||||
* interface to set the stability attributes of the {@code provider} field for
|
||||
* all probes specified in that provider.
|
||||
* <p>
|
||||
* If this annotation is not present, the interface attributes for the
|
||||
* {@code provider} field will be Private/Private/Unknown.
|
||||
* <p>
|
||||
* @see <a href="http://docs.sun.com/app/docs/doc/817-6223/6mlkidlnp?a=view">Solaris Dynamic Tracing Guide, Chapter 39: Stability</a>
|
||||
* @since 1.7
|
||||
*/
|
||||
@Retention(RetentionPolicy.RUNTIME)
|
||||
@Target({ ElementType.TYPE })
|
||||
public @interface ProviderAttributes {
|
||||
Attributes value();
|
||||
}
|
||||
88
jdkSrc/jdk8/com/sun/tracing/dtrace/StabilityLevel.java
Normal file
88
jdkSrc/jdk8/com/sun/tracing/dtrace/StabilityLevel.java
Normal file
@@ -0,0 +1,88 @@
|
||||
/*
|
||||
* Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation. Oracle designates this
|
||||
* particular file as subject to the "Classpath" exception as provided
|
||||
* by Oracle in the LICENSE file that accompanied this code.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
package com.sun.tracing.dtrace;
|
||||
|
||||
/**
|
||||
* Enumeration for the DTrace stability levels.
|
||||
*
|
||||
* @see <a href="http://docs.sun.com/app/docs/doc/817-6223/6mlkidlnp?a=view">Solaris Dynamic Tracing Guide, Chapter 39: Stability</a>
|
||||
* @since 1.7
|
||||
*/
|
||||
public enum StabilityLevel {
|
||||
/**
|
||||
* The interface is private to DTrace and represents an implementation
|
||||
* detail of DTrace.
|
||||
*/
|
||||
INTERNAL (0),
|
||||
/**
|
||||
* The interface is private to Sun for use by other Sun products. It is
|
||||
* not yet publicly documented for use by customers and ISVs.
|
||||
*/
|
||||
PRIVATE (1),
|
||||
/**
|
||||
* The interface is supported in the current release but is scheduled
|
||||
* to be removed, most likely in a future minor release.
|
||||
*/
|
||||
OBSOLETE (2),
|
||||
/**
|
||||
* The interface is controlled by an entity other than Sun.
|
||||
*/
|
||||
EXTERNAL (3),
|
||||
/**
|
||||
* The interface gives developers early access to new or
|
||||
* rapidly changing technology or to an implementation artifact that is
|
||||
* essential for observing or debugging system behavior. A more
|
||||
* stable solution is anticipated in the future.
|
||||
*/
|
||||
UNSTABLE (4),
|
||||
/**
|
||||
* The interface might eventually become Standard or Stable but is
|
||||
* still in transition.
|
||||
*/
|
||||
EVOLVING (5),
|
||||
/**
|
||||
* The interface is a mature interface under Sun's control.
|
||||
*/
|
||||
STABLE (6),
|
||||
/**
|
||||
* The interface complies with an industry standard.
|
||||
*/
|
||||
STANDARD (7);
|
||||
|
||||
String toDisplayString() {
|
||||
return toString().substring(0,1) +
|
||||
toString().substring(1).toLowerCase();
|
||||
}
|
||||
|
||||
public int getEncoding() { return encoding; }
|
||||
|
||||
private int encoding;
|
||||
|
||||
private StabilityLevel(int encoding) {
|
||||
this.encoding = encoding;
|
||||
}
|
||||
}
|
||||
|
||||
82
jdkSrc/jdk8/com/sun/tracing/dtrace/package-info.java
Normal file
82
jdkSrc/jdk8/com/sun/tracing/dtrace/package-info.java
Normal file
@@ -0,0 +1,82 @@
|
||||
/*
|
||||
* Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation. Oracle designates this
|
||||
* particular file as subject to the "Classpath" exception as provided
|
||||
* by Oracle in the LICENSE file that accompanied this code.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
/**
|
||||
* This package contains annotations and enumerations that are used to
|
||||
* add DTrace-specific information to a tracing provider.
|
||||
* <p>
|
||||
* The DTrace-specific annotations modify the attributes of a DTrace provider
|
||||
* implementation when it is used by the tracing subsystem. The annotations are
|
||||
* added to a {@code com.sun.tracing} provider specification to control
|
||||
* specific attributes of the provider as it relates to DTrace.
|
||||
* <p>
|
||||
* Any other tracing subsystems supported by the system will ignore these
|
||||
* annotations.
|
||||
* <p>
|
||||
* DTrace probes have additional fields and stability attributes that are
|
||||
* not accounted for in the generic tracing package. If unspecified, the
|
||||
* default values are used for the stability and dependency attributes of
|
||||
* probes, as well as for the module and field names of the generated probes.
|
||||
* The values can be specified by adding the appropriate annotations to the
|
||||
* provider specification.
|
||||
* <p>
|
||||
* The {@code FunctionName} annotation is used to annotate the tracepoint
|
||||
* methods defined in the provider specification. The value of this annotation
|
||||
* is used as the {@code function} field in the generated DTrace probes. It
|
||||
* is typically set to the name of the enclosing function where the
|
||||
* tracepoint is triggered.
|
||||
* <p>
|
||||
* The {@code ModuleName} annotation is used to annotate the provider
|
||||
* specification itself and applies to all the probes in the provider. It
|
||||
* sets the value of the {@code module} field in the generated DTrace probes.
|
||||
* <p>
|
||||
* The remaining annotations, are also applied to the provider itself, and
|
||||
* are used to set the stability and dependency attributes of all probes in
|
||||
* that provider. Each probe field and the probe arguments can be
|
||||
* independently assigned interface attributes to control the stability
|
||||
* ratings of the probes.
|
||||
* <p>
|
||||
* Here is an example of how to declare a provider, specifying additional DTrace
|
||||
* data:
|
||||
<PRE>
|
||||
@ProviderName("my_app_provider")
|
||||
@ModuleName("app.jar")
|
||||
@ProviderAttributes(@Attributes={
|
||||
name=StabilityLevel.STABLE,data=StabilityLevel.STABLE,
|
||||
dependency=DependencyClass.COMMON})
|
||||
@ProbeAttributes(@Attributes={
|
||||
name=StabilityLevel.STABLE,data=StabilityLevel.STABLE,
|
||||
dependency=DependencyClass.COMMON})
|
||||
@ModuleAttributes(@Attributes={name=StabilityLevel.UNSTABLE})
|
||||
public class MyProvider {
|
||||
@FunctionName("main") void startProbe();
|
||||
}
|
||||
</PRE>
|
||||
* <p>
|
||||
* @see <a href="http://docs.sun.com/app/docs/doc/817-6223/6mlkidlms?a=view">Solaris Dynamic Tracing Guide, Chapter 34: Statically Defined Tracing for User Applications</a>
|
||||
* @see <a href="http://docs.sun.com/app/docs/doc/817-6223/6mlkidlnp?a=view">Solaris Dynamic Tracing Guide, Chapter 39: Stability</a>
|
||||
*/
|
||||
|
||||
package com.sun.tracing.dtrace;
|
||||
Reference in New Issue
Block a user