#
# Copyright (c) 2015, 2017, 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 FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
# ##########################################################
#
class name java/util/logging/ConsoleHandler
header extends java/util/logging/StreamHandler flags 21 classAnnotations @Ljdk/Profile+Annotation;(value=I1)
method name <init> descriptor ()V flags 1
method name publish descriptor (Ljava/util/logging/LogRecord;)V flags 1
method name close descriptor ()V flags 1

class name java/util/logging/ErrorManager
header extends java/lang/Object flags 21 classAnnotations @Ljdk/Profile+Annotation;(value=I1)
field name GENERIC_FAILURE descriptor I constantValue 0 flags 19
field name WRITE_FAILURE descriptor I constantValue 1 flags 19
field name FLUSH_FAILURE descriptor I constantValue 2 flags 19
field name CLOSE_FAILURE descriptor I constantValue 3 flags 19
field name OPEN_FAILURE descriptor I constantValue 4 flags 19
field name FORMAT_FAILURE descriptor I constantValue 5 flags 19
method name <init> descriptor ()V flags 1
method name error descriptor (Ljava/lang/String;Ljava/lang/Exception;I)V flags 21

class name java/util/logging/FileHandler
header extends java/util/logging/StreamHandler flags 21 classAnnotations @Ljdk/Profile+Annotation;(value=I1)
method name <init> descriptor ()V thrownTypes java/io/IOException,java/lang/SecurityException flags 1
method name <init> descriptor (Ljava/lang/String;)V thrownTypes java/io/IOException,java/lang/SecurityException flags 1
method name <init> descriptor (Ljava/lang/String;Z)V thrownTypes java/io/IOException,java/lang/SecurityException flags 1
method name <init> descriptor (Ljava/lang/String;II)V thrownTypes java/io/IOException,java/lang/SecurityException flags 1
method name <init> descriptor (Ljava/lang/String;IIZ)V thrownTypes java/io/IOException,java/lang/SecurityException flags 1
method name publish descriptor (Ljava/util/logging/LogRecord;)V flags 21
method name close descriptor ()V thrownTypes java/lang/SecurityException flags 21

class name java/util/logging/Filter
header extends java/lang/Object flags 601 classAnnotations @Ljdk/Profile+Annotation;(value=I1) runtimeAnnotations @Ljava/lang/FunctionalInterface;
method name isLoggable descriptor (Ljava/util/logging/LogRecord;)Z flags 401

class name java/util/logging/Formatter
header extends java/lang/Object flags 421 classAnnotations @Ljdk/Profile+Annotation;(value=I1)
method name <init> descriptor ()V flags 4
method name format descriptor (Ljava/util/logging/LogRecord;)Ljava/lang/String; flags 401
method name getHead descriptor (Ljava/util/logging/Handler;)Ljava/lang/String; flags 1
method name getTail descriptor (Ljava/util/logging/Handler;)Ljava/lang/String; flags 1
method name formatMessage descriptor (Ljava/util/logging/LogRecord;)Ljava/lang/String; flags 21

class name java/util/logging/Handler
header extends java/lang/Object flags 421 classAnnotations @Ljdk/Profile+Annotation;(value=I1)
method name <init> descriptor ()V flags 4
method name publish descriptor (Ljava/util/logging/LogRecord;)V flags 401
method name flush descriptor ()V flags 401
method name close descriptor ()V thrownTypes java/lang/SecurityException flags 401
method name setFormatter descriptor (Ljava/util/logging/Formatter;)V thrownTypes java/lang/SecurityException flags 21
method name getFormatter descriptor ()Ljava/util/logging/Formatter; flags 1
method name setEncoding descriptor (Ljava/lang/String;)V thrownTypes java/lang/SecurityException,java/io/UnsupportedEncodingException flags 21
method name getEncoding descriptor ()Ljava/lang/String; flags 1
method name setFilter descriptor (Ljava/util/logging/Filter;)V thrownTypes java/lang/SecurityException flags 21
method name getFilter descriptor ()Ljava/util/logging/Filter; flags 1
method name setErrorManager descriptor (Ljava/util/logging/ErrorManager;)V flags 21
method name getErrorManager descriptor ()Ljava/util/logging/ErrorManager; flags 1
method name reportError descriptor (Ljava/lang/String;Ljava/lang/Exception;I)V flags 4
method name setLevel descriptor (Ljava/util/logging/Level;)V thrownTypes java/lang/SecurityException flags 21
method name getLevel descriptor ()Ljava/util/logging/Level; flags 1
method name isLoggable descriptor (Ljava/util/logging/LogRecord;)Z flags 1

class name java/util/logging/Level
header extends java/lang/Object implements java/io/Serializable flags 21 classAnnotations @Ljdk/Profile+Annotation;(value=I1)
field name OFF descriptor Ljava/util/logging/Level; flags 19
field name SEVERE descriptor Ljava/util/logging/Level; flags 19
field name WARNING descriptor Ljava/util/logging/Level; flags 19
field name INFO descriptor Ljava/util/logging/Level; flags 19
field name CONFIG descriptor Ljava/util/logging/Level; flags 19
field name FINE descriptor Ljava/util/logging/Level; flags 19
field name FINER descriptor Ljava/util/logging/Level; flags 19
field name FINEST descriptor Ljava/util/logging/Level; flags 19
field name ALL descriptor Ljava/util/logging/Level; flags 19
method name <init> descriptor (Ljava/lang/String;I)V flags 4
method name <init> descriptor (Ljava/lang/String;ILjava/lang/String;)V flags 4
method name getResourceBundleName descriptor ()Ljava/lang/String; flags 1
method name getName descriptor ()Ljava/lang/String; flags 1
method name getLocalizedName descriptor ()Ljava/lang/String; flags 1
method name toString descriptor ()Ljava/lang/String; flags 11
method name intValue descriptor ()I flags 11
method name parse descriptor (Ljava/lang/String;)Ljava/util/logging/Level; thrownTypes java/lang/IllegalArgumentException flags 29
method name equals descriptor (Ljava/lang/Object;)Z flags 1
method name hashCode descriptor ()I flags 1

class name java/util/logging/LogManager
header extends java/lang/Object flags 21 classAnnotations @Ljdk/Profile+Annotation;(value=I1)
field name LOGGING_MXBEAN_NAME descriptor Ljava/lang/String; constantValue java.util.logging:type=Logging flags 19
method name <init> descriptor ()V flags 4
method name getLogManager descriptor ()Ljava/util/logging/LogManager; flags 9
method name addPropertyChangeListener descriptor (Ljava/beans/PropertyChangeListener;)V thrownTypes java/lang/SecurityException flags 1 deprecated true runtimeAnnotations @Ljava/lang/Deprecated;
method name removePropertyChangeListener descriptor (Ljava/beans/PropertyChangeListener;)V thrownTypes java/lang/SecurityException flags 1 deprecated true runtimeAnnotations @Ljava/lang/Deprecated;
method name addLogger descriptor (Ljava/util/logging/Logger;)Z flags 1
method name getLogger descriptor (Ljava/lang/String;)Ljava/util/logging/Logger; flags 1
method name getLoggerNames descriptor ()Ljava/util/Enumeration; flags 1 signature ()Ljava/util/Enumeration<Ljava/lang/String;>;
method name readConfiguration descriptor ()V thrownTypes java/io/IOException,java/lang/SecurityException flags 1
method name reset descriptor ()V thrownTypes java/lang/SecurityException flags 1
method name readConfiguration descriptor (Ljava/io/InputStream;)V thrownTypes java/io/IOException,java/lang/SecurityException flags 1
method name getProperty descriptor (Ljava/lang/String;)Ljava/lang/String; flags 1
method name checkAccess descriptor ()V thrownTypes java/lang/SecurityException flags 1
method name getLoggingMXBean descriptor ()Ljava/util/logging/LoggingMXBean; flags 29

class name java/util/logging/LogRecord
header extends java/lang/Object implements java/io/Serializable flags 21 classAnnotations @Ljdk/Profile+Annotation;(value=I1)
method name <init> descriptor (Ljava/util/logging/Level;Ljava/lang/String;)V flags 1
method name getLoggerName descriptor ()Ljava/lang/String; flags 1
method name setLoggerName descriptor (Ljava/lang/String;)V flags 1
method name getResourceBundle descriptor ()Ljava/util/ResourceBundle; flags 1
method name setResourceBundle descriptor (Ljava/util/ResourceBundle;)V flags 1
method name getResourceBundleName descriptor ()Ljava/lang/String; flags 1
method name setResourceBundleName descriptor (Ljava/lang/String;)V flags 1
method name getLevel descriptor ()Ljava/util/logging/Level; flags 1
method name setLevel descriptor (Ljava/util/logging/Level;)V flags 1
method name getSequenceNumber descriptor ()J flags 1
method name setSequenceNumber descriptor (J)V flags 1
method name getSourceClassName descriptor ()Ljava/lang/String; flags 1
method name setSourceClassName descriptor (Ljava/lang/String;)V flags 1
method name getSourceMethodName descriptor ()Ljava/lang/String; flags 1
method name setSourceMethodName descriptor (Ljava/lang/String;)V flags 1
method name getMessage descriptor ()Ljava/lang/String; flags 1
method name setMessage descriptor (Ljava/lang/String;)V flags 1
method name getParameters descriptor ()[Ljava/lang/Object; flags 1
method name setParameters descriptor ([Ljava/lang/Object;)V flags 1
method name getThreadID descriptor ()I flags 1
method name setThreadID descriptor (I)V flags 1
method name getMillis descriptor ()J flags 1
method name setMillis descriptor (J)V flags 1
method name getThrown descriptor ()Ljava/lang/Throwable; flags 1
method name setThrown descriptor (Ljava/lang/Throwable;)V flags 1

class name java/util/logging/Logger
header extends java/lang/Object flags 21 classAnnotations @Ljdk/Profile+Annotation;(value=I1)
field name GLOBAL_LOGGER_NAME descriptor Ljava/lang/String; constantValue global flags 19
field name global descriptor Ljava/util/logging/Logger; flags 19 deprecated true runtimeAnnotations @Ljava/lang/Deprecated;
method name getGlobal descriptor ()Ljava/util/logging/Logger; flags 19
method name <init> descriptor (Ljava/lang/String;Ljava/lang/String;)V flags 4
method name getLogger descriptor (Ljava/lang/String;)Ljava/util/logging/Logger; flags 9 runtimeAnnotations @Lsun/reflect/CallerSensitive;
method name getLogger descriptor (Ljava/lang/String;Ljava/lang/String;)Ljava/util/logging/Logger; flags 9 runtimeAnnotations @Lsun/reflect/CallerSensitive;
method name getAnonymousLogger descriptor ()Ljava/util/logging/Logger; flags 9
method name getAnonymousLogger descriptor (Ljava/lang/String;)Ljava/util/logging/Logger; flags 9 runtimeAnnotations @Lsun/reflect/CallerSensitive;
method name getResourceBundle descriptor ()Ljava/util/ResourceBundle; flags 1
method name getResourceBundleName descriptor ()Ljava/lang/String; flags 1
method name setFilter descriptor (Ljava/util/logging/Filter;)V thrownTypes java/lang/SecurityException flags 1
method name getFilter descriptor ()Ljava/util/logging/Filter; flags 1
method name log descriptor (Ljava/util/logging/LogRecord;)V flags 1
method name log descriptor (Ljava/util/logging/Level;Ljava/lang/String;)V flags 1
method name log descriptor (Ljava/util/logging/Level;Ljava/util/function/Supplier;)V flags 1 signature (Ljava/util/logging/Level;Ljava/util/function/Supplier<Ljava/lang/String;>;)V
method name log descriptor (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Object;)V flags 1
method name log descriptor (Ljava/util/logging/Level;Ljava/lang/String;[Ljava/lang/Object;)V flags 1
method name log descriptor (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V flags 1
method name log descriptor (Ljava/util/logging/Level;Ljava/lang/Throwable;Ljava/util/function/Supplier;)V flags 1 signature (Ljava/util/logging/Level;Ljava/lang/Throwable;Ljava/util/function/Supplier<Ljava/lang/String;>;)V
method name logp descriptor (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V flags 1
method name logp descriptor (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Supplier;)V flags 1 signature (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Supplier<Ljava/lang/String;>;)V
method name logp descriptor (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V flags 1
method name logp descriptor (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V flags 1
method name logp descriptor (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V flags 1
method name logp descriptor (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;Ljava/util/function/Supplier;)V flags 1 signature (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;Ljava/util/function/Supplier<Ljava/lang/String;>;)V
method name logrb descriptor (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V flags 1 deprecated true runtimeAnnotations @Ljava/lang/Deprecated;
method name logrb descriptor (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V flags 1 deprecated true runtimeAnnotations @Ljava/lang/Deprecated;
method name logrb descriptor (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V flags 1 deprecated true runtimeAnnotations @Ljava/lang/Deprecated;
method name logrb descriptor (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/util/ResourceBundle;Ljava/lang/String;[Ljava/lang/Object;)V flags 81
method name logrb descriptor (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V flags 1 deprecated true runtimeAnnotations @Ljava/lang/Deprecated;
method name logrb descriptor (Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/util/ResourceBundle;Ljava/lang/String;Ljava/lang/Throwable;)V flags 1
method name entering descriptor (Ljava/lang/String;Ljava/lang/String;)V flags 1
method name entering descriptor (Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V flags 1
method name entering descriptor (Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V flags 1
method name exiting descriptor (Ljava/lang/String;Ljava/lang/String;)V flags 1
method name exiting descriptor (Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V flags 1
method name throwing descriptor (Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V flags 1
method name severe descriptor (Ljava/lang/String;)V flags 1
method name warning descriptor (Ljava/lang/String;)V flags 1
method name info descriptor (Ljava/lang/String;)V flags 1
method name config descriptor (Ljava/lang/String;)V flags 1
method name fine descriptor (Ljava/lang/String;)V flags 1
method name finer descriptor (Ljava/lang/String;)V flags 1
method name finest descriptor (Ljava/lang/String;)V flags 1
method name severe descriptor (Ljava/util/function/Supplier;)V flags 1 signature (Ljava/util/function/Supplier<Ljava/lang/String;>;)V
method name warning descriptor (Ljava/util/function/Supplier;)V flags 1 signature (Ljava/util/function/Supplier<Ljava/lang/String;>;)V
method name info descriptor (Ljava/util/function/Supplier;)V flags 1 signature (Ljava/util/function/Supplier<Ljava/lang/String;>;)V
method name config descriptor (Ljava/util/function/Supplier;)V flags 1 signature (Ljava/util/function/Supplier<Ljava/lang/String;>;)V
method name fine descriptor (Ljava/util/function/Supplier;)V flags 1 signature (Ljava/util/function/Supplier<Ljava/lang/String;>;)V
method name finer descriptor (Ljava/util/function/Supplier;)V flags 1 signature (Ljava/util/function/Supplier<Ljava/lang/String;>;)V
method name finest descriptor (Ljava/util/function/Supplier;)V flags 1 signature (Ljava/util/function/Supplier<Ljava/lang/String;>;)V
method name setLevel descriptor (Ljava/util/logging/Level;)V thrownTypes java/lang/SecurityException flags 1
method name getLevel descriptor ()Ljava/util/logging/Level; flags 1
method name isLoggable descriptor (Ljava/util/logging/Level;)Z flags 1
method name getName descriptor ()Ljava/lang/String; flags 1
method name addHandler descriptor (Ljava/util/logging/Handler;)V thrownTypes java/lang/SecurityException flags 1
method name removeHandler descriptor (Ljava/util/logging/Handler;)V thrownTypes java/lang/SecurityException flags 1
method name getHandlers descriptor ()[Ljava/util/logging/Handler; flags 1
method name setUseParentHandlers descriptor (Z)V flags 1
method name getUseParentHandlers descriptor ()Z flags 1
method name setResourceBundle descriptor (Ljava/util/ResourceBundle;)V flags 1
method name getParent descriptor ()Ljava/util/logging/Logger; flags 1
method name setParent descriptor (Ljava/util/logging/Logger;)V flags 1

class name java/util/logging/LoggingMXBean
header extends java/lang/Object flags 601 classAnnotations @Ljdk/Profile+Annotation;(value=I1)
method name getLoggerNames descriptor ()Ljava/util/List; flags 401 signature ()Ljava/util/List<Ljava/lang/String;>;
method name getLoggerLevel descriptor (Ljava/lang/String;)Ljava/lang/String; flags 401
method name setLoggerLevel descriptor (Ljava/lang/String;Ljava/lang/String;)V flags 401
method name getParentLoggerName descriptor (Ljava/lang/String;)Ljava/lang/String; flags 401

class name java/util/logging/LoggingPermission
header extends java/security/BasicPermission flags 31 classAnnotations @Ljdk/Profile+Annotation;(value=I1)
method name <init> descriptor (Ljava/lang/String;Ljava/lang/String;)V thrownTypes java/lang/IllegalArgumentException flags 1

class name java/util/logging/MemoryHandler
header extends java/util/logging/Handler flags 21 classAnnotations @Ljdk/Profile+Annotation;(value=I1)
method name <init> descriptor ()V flags 1
method name <init> descriptor (Ljava/util/logging/Handler;ILjava/util/logging/Level;)V flags 1
method name publish descriptor (Ljava/util/logging/LogRecord;)V flags 21
method name push descriptor ()V flags 21
method name flush descriptor ()V flags 1
method name close descriptor ()V thrownTypes java/lang/SecurityException flags 1
method name setPushLevel descriptor (Ljava/util/logging/Level;)V thrownTypes java/lang/SecurityException flags 21
method name getPushLevel descriptor ()Ljava/util/logging/Level; flags 1
method name isLoggable descriptor (Ljava/util/logging/LogRecord;)Z flags 1

class name java/util/logging/SimpleFormatter
header extends java/util/logging/Formatter flags 21 classAnnotations @Ljdk/Profile+Annotation;(value=I1)
method name <init> descriptor ()V flags 1
method name format descriptor (Ljava/util/logging/LogRecord;)Ljava/lang/String; flags 21

class name java/util/logging/SocketHandler
header extends java/util/logging/StreamHandler flags 21 classAnnotations @Ljdk/Profile+Annotation;(value=I1)
method name <init> descriptor ()V thrownTypes java/io/IOException flags 1
method name <init> descriptor (Ljava/lang/String;I)V thrownTypes java/io/IOException flags 1
method name close descriptor ()V thrownTypes java/lang/SecurityException flags 21
method name publish descriptor (Ljava/util/logging/LogRecord;)V flags 21

class name java/util/logging/StreamHandler
header extends java/util/logging/Handler flags 21 classAnnotations @Ljdk/Profile+Annotation;(value=I1)
method name <init> descriptor ()V flags 1
method name <init> descriptor (Ljava/io/OutputStream;Ljava/util/logging/Formatter;)V flags 1
method name setOutputStream descriptor (Ljava/io/OutputStream;)V thrownTypes java/lang/SecurityException flags 24
method name setEncoding descriptor (Ljava/lang/String;)V thrownTypes java/lang/SecurityException,java/io/UnsupportedEncodingException flags 21
method name publish descriptor (Ljava/util/logging/LogRecord;)V flags 21
method name isLoggable descriptor (Ljava/util/logging/LogRecord;)Z flags 1
method name flush descriptor ()V flags 21
method name close descriptor ()V thrownTypes java/lang/SecurityException flags 21

class name java/util/logging/XMLFormatter
header extends java/util/logging/Formatter flags 21 classAnnotations @Ljdk/Profile+Annotation;(value=I1)
method name <init> descriptor ()V flags 1
method name format descriptor (Ljava/util/logging/LogRecord;)Ljava/lang/String; flags 1
method name getHead descriptor (Ljava/util/logging/Handler;)Ljava/lang/String; flags 1
method name getTail descriptor (Ljava/util/logging/Handler;)Ljava/lang/String; flags 1

