1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.apache.bcel;
21
22 import java.io.BufferedInputStream;
23 import java.io.BufferedOutputStream;
24 import java.io.BufferedReader;
25 import java.io.BufferedWriter;
26 import java.io.ByteArrayInputStream;
27 import java.io.ByteArrayOutputStream;
28 import java.io.CharArrayReader;
29 import java.io.CharArrayWriter;
30 import java.io.CharConversionException;
31 import java.io.Closeable;
32 import java.io.Console;
33 import java.io.DataInput;
34 import java.io.DataInputStream;
35 import java.io.DataOutput;
36 import java.io.DataOutputStream;
37 import java.io.EOFException;
38 import java.io.Externalizable;
39 import java.io.File;
40 import java.io.FileDescriptor;
41 import java.io.FileFilter;
42 import java.io.FileInputStream;
43 import java.io.FileNotFoundException;
44 import java.io.FileOutputStream;
45 import java.io.FilePermission;
46 import java.io.FileReader;
47 import java.io.FileWriter;
48 import java.io.FilenameFilter;
49 import java.io.FilterInputStream;
50 import java.io.FilterOutputStream;
51 import java.io.FilterReader;
52 import java.io.FilterWriter;
53 import java.io.Flushable;
54 import java.io.IOException;
55 import java.io.InputStream;
56 import java.io.InputStreamReader;
57 import java.io.InterruptedIOException;
58 import java.io.InvalidClassException;
59 import java.io.InvalidObjectException;
60 import java.io.LineNumberReader;
61 import java.io.NotActiveException;
62 import java.io.NotSerializableException;
63 import java.io.ObjectInput;
64 import java.io.ObjectInputStream;
65 import java.io.ObjectInputValidation;
66 import java.io.ObjectOutput;
67 import java.io.ObjectOutputStream;
68 import java.io.ObjectStreamClass;
69 import java.io.ObjectStreamException;
70 import java.io.ObjectStreamField;
71 import java.io.OptionalDataException;
72 import java.io.OutputStream;
73 import java.io.OutputStreamWriter;
74 import java.io.PipedInputStream;
75 import java.io.PipedOutputStream;
76 import java.io.PipedReader;
77 import java.io.PipedWriter;
78 import java.io.PrintStream;
79 import java.io.PrintWriter;
80 import java.io.PushbackInputStream;
81 import java.io.PushbackReader;
82 import java.io.RandomAccessFile;
83 import java.io.Reader;
84 import java.io.SequenceInputStream;
85 import java.io.Serializable;
86 import java.io.SerializablePermission;
87 import java.io.StreamCorruptedException;
88 import java.io.StreamTokenizer;
89 import java.io.StringReader;
90 import java.io.StringWriter;
91 import java.io.SyncFailedException;
92 import java.io.UTFDataFormatException;
93 import java.io.UncheckedIOException;
94 import java.io.UnsupportedEncodingException;
95 import java.io.WriteAbortedException;
96 import java.io.Writer;
97 import java.lang.annotation.Annotation;
98 import java.lang.annotation.AnnotationFormatError;
99 import java.lang.annotation.AnnotationTypeMismatchException;
100 import java.lang.annotation.Documented;
101 import java.lang.annotation.IncompleteAnnotationException;
102 import java.lang.annotation.Inherited;
103 import java.lang.annotation.Native;
104 import java.lang.annotation.Repeatable;
105 import java.lang.annotation.Retention;
106 import java.lang.annotation.Target;
107 import java.lang.invoke.CallSite;
108 import java.lang.invoke.ConstantCallSite;
109 import java.lang.invoke.LambdaMetafactory;
110 import java.lang.invoke.MethodHandle;
111 import java.lang.invoke.MethodHandleInfo;
112 import java.lang.invoke.MethodHandles;
113 import java.lang.invoke.MethodType;
114 import java.lang.invoke.MutableCallSite;
115 import java.lang.invoke.SwitchPoint;
116 import java.lang.invoke.VolatileCallSite;
117 import java.lang.invoke.WrongMethodTypeException;
118 import java.lang.ref.PhantomReference;
119 import java.lang.ref.Reference;
120 import java.lang.ref.ReferenceQueue;
121 import java.lang.ref.SoftReference;
122 import java.lang.ref.WeakReference;
123 import java.lang.reflect.AccessibleObject;
124 import java.lang.reflect.AnnotatedArrayType;
125 import java.lang.reflect.AnnotatedElement;
126 import java.lang.reflect.AnnotatedParameterizedType;
127 import java.lang.reflect.AnnotatedType;
128 import java.lang.reflect.AnnotatedTypeVariable;
129 import java.lang.reflect.AnnotatedWildcardType;
130 import java.lang.reflect.Array;
131 import java.lang.reflect.Constructor;
132 import java.lang.reflect.Executable;
133 import java.lang.reflect.Field;
134 import java.lang.reflect.GenericArrayType;
135 import java.lang.reflect.GenericDeclaration;
136 import java.lang.reflect.InvocationHandler;
137 import java.lang.reflect.InvocationTargetException;
138 import java.lang.reflect.MalformedParameterizedTypeException;
139 import java.lang.reflect.Member;
140 import java.lang.reflect.Method;
141 import java.lang.reflect.Modifier;
142 import java.lang.reflect.Parameter;
143 import java.lang.reflect.ParameterizedType;
144 import java.lang.reflect.Proxy;
145 import java.lang.reflect.ReflectPermission;
146 import java.lang.reflect.Type;
147 import java.lang.reflect.TypeVariable;
148 import java.lang.reflect.UndeclaredThrowableException;
149 import java.lang.reflect.WildcardType;
150 import java.math.BigDecimal;
151 import java.math.BigInteger;
152 import java.math.MathContext;
153 import java.math.RoundingMode;
154 import java.net.Authenticator;
155 import java.net.BindException;
156 import java.net.CacheRequest;
157 import java.net.CacheResponse;
158 import java.net.ConnectException;
159 import java.net.ContentHandler;
160 import java.net.CookieHandler;
161 import java.net.CookieManager;
162 import java.net.CookiePolicy;
163 import java.net.CookieStore;
164 import java.net.DatagramPacket;
165 import java.net.DatagramSocket;
166 import java.net.DatagramSocketImpl;
167 import java.net.FileNameMap;
168 import java.net.HttpCookie;
169 import java.net.HttpRetryException;
170 import java.net.HttpURLConnection;
171 import java.net.IDN;
172 import java.net.Inet4Address;
173 import java.net.Inet6Address;
174 import java.net.InetAddress;
175 import java.net.InetSocketAddress;
176 import java.net.InterfaceAddress;
177 import java.net.JarURLConnection;
178 import java.net.MalformedURLException;
179 import java.net.MulticastSocket;
180 import java.net.NetPermission;
181 import java.net.NetworkInterface;
182 import java.net.NoRouteToHostException;
183 import java.net.PasswordAuthentication;
184 import java.net.PortUnreachableException;
185 import java.net.ProtocolException;
186 import java.net.ProxySelector;
187 import java.net.ResponseCache;
188 import java.net.SecureCacheResponse;
189 import java.net.ServerSocket;
190 import java.net.Socket;
191 import java.net.SocketAddress;
192 import java.net.SocketException;
193 import java.net.SocketImpl;
194 import java.net.SocketOption;
195 import java.net.SocketOptions;
196 import java.net.SocketPermission;
197 import java.net.SocketTimeoutException;
198 import java.net.StandardProtocolFamily;
199 import java.net.StandardSocketOptions;
200 import java.net.URI;
201 import java.net.URISyntaxException;
202 import java.net.URL;
203 import java.net.URLClassLoader;
204 import java.net.URLConnection;
205 import java.net.URLDecoder;
206 import java.net.URLEncoder;
207 import java.net.URLStreamHandler;
208 import java.net.UnknownHostException;
209 import java.net.UnknownServiceException;
210 import java.nio.Buffer;
211 import java.nio.BufferOverflowException;
212 import java.nio.BufferUnderflowException;
213 import java.nio.ByteBuffer;
214 import java.nio.ByteOrder;
215 import java.nio.CharBuffer;
216 import java.nio.DoubleBuffer;
217 import java.nio.FloatBuffer;
218 import java.nio.IntBuffer;
219 import java.nio.InvalidMarkException;
220 import java.nio.LongBuffer;
221 import java.nio.MappedByteBuffer;
222 import java.nio.ReadOnlyBufferException;
223 import java.nio.ShortBuffer;
224 import java.nio.charset.CharacterCodingException;
225 import java.nio.charset.Charset;
226 import java.nio.charset.CharsetDecoder;
227 import java.nio.charset.CharsetEncoder;
228 import java.nio.charset.CoderResult;
229 import java.nio.charset.CodingErrorAction;
230 import java.nio.charset.IllegalCharsetNameException;
231 import java.nio.charset.MalformedInputException;
232 import java.nio.charset.StandardCharsets;
233 import java.nio.charset.UnmappableCharacterException;
234 import java.nio.charset.UnsupportedCharsetException;
235 import java.nio.file.AccessDeniedException;
236 import java.nio.file.AtomicMoveNotSupportedException;
237 import java.nio.file.ClosedDirectoryStreamException;
238 import java.nio.file.ClosedFileSystemException;
239 import java.nio.file.ClosedWatchServiceException;
240 import java.nio.file.DirectoryIteratorException;
241 import java.nio.file.DirectoryNotEmptyException;
242 import java.nio.file.DirectoryStream;
243 import java.nio.file.FileAlreadyExistsException;
244 import java.nio.file.FileSystem;
245 import java.nio.file.FileSystemException;
246 import java.nio.file.FileSystemLoopException;
247 import java.nio.file.FileSystemNotFoundException;
248 import java.nio.file.FileSystems;
249 import java.nio.file.FileVisitOption;
250 import java.nio.file.FileVisitResult;
251 import java.nio.file.FileVisitor;
252 import java.nio.file.Files;
253 import java.nio.file.InvalidPathException;
254 import java.nio.file.LinkOption;
255 import java.nio.file.NoSuchFileException;
256 import java.nio.file.NotDirectoryException;
257 import java.nio.file.NotLinkException;
258 import java.nio.file.OpenOption;
259 import java.nio.file.Path;
260 import java.nio.file.PathMatcher;
261 import java.nio.file.Paths;
262 import java.nio.file.ProviderMismatchException;
263 import java.nio.file.ProviderNotFoundException;
264 import java.nio.file.ReadOnlyFileSystemException;
265 import java.nio.file.SimpleFileVisitor;
266 import java.nio.file.StandardCopyOption;
267 import java.nio.file.StandardOpenOption;
268 import java.nio.file.StandardWatchEventKinds;
269 import java.nio.file.WatchEvent;
270 import java.nio.file.WatchKey;
271 import java.nio.file.WatchService;
272 import java.nio.file.Watchable;
273 import java.nio.file.attribute.AclEntry;
274 import java.nio.file.attribute.AclEntryFlag;
275 import java.nio.file.attribute.AclEntryPermission;
276 import java.nio.file.attribute.AclEntryType;
277 import java.nio.file.attribute.AclFileAttributeView;
278 import java.nio.file.attribute.AttributeView;
279 import java.nio.file.attribute.BasicFileAttributeView;
280 import java.nio.file.attribute.BasicFileAttributes;
281 import java.nio.file.attribute.DosFileAttributeView;
282 import java.nio.file.attribute.DosFileAttributes;
283 import java.nio.file.attribute.FileAttribute;
284 import java.nio.file.attribute.FileAttributeView;
285 import java.nio.file.attribute.FileOwnerAttributeView;
286 import java.nio.file.attribute.FileStoreAttributeView;
287 import java.nio.file.attribute.FileTime;
288 import java.nio.file.attribute.GroupPrincipal;
289 import java.nio.file.attribute.PosixFileAttributeView;
290 import java.nio.file.attribute.PosixFileAttributes;
291 import java.nio.file.attribute.PosixFilePermission;
292 import java.nio.file.attribute.PosixFilePermissions;
293 import java.nio.file.attribute.UserDefinedFileAttributeView;
294 import java.nio.file.attribute.UserPrincipal;
295 import java.nio.file.attribute.UserPrincipalLookupService;
296 import java.nio.file.attribute.UserPrincipalNotFoundException;
297 import java.security.AccessControlContext;
298 import java.security.AccessControlException;
299 import java.security.AccessController;
300 import java.security.AlgorithmParameterGenerator;
301 import java.security.AlgorithmParameters;
302 import java.security.AlgorithmParametersSpi;
303 import java.security.AllPermission;
304 import java.security.AuthProvider;
305 import java.security.BasicPermission;
306 import java.security.Certificate;
307 import java.security.CodeSigner;
308 import java.security.CodeSource;
309 import java.security.DigestException;
310 import java.security.DigestInputStream;
311 import java.security.DigestOutputStream;
312 import java.security.DomainCombiner;
313 import java.security.GeneralSecurityException;
314 import java.security.Guard;
315 import java.security.GuardedObject;
316 import java.security.Identity;
317 import java.security.IdentityScope;
318 import java.security.InvalidAlgorithmParameterException;
319 import java.security.InvalidKeyException;
320 import java.security.InvalidParameterException;
321 import java.security.Key;
322 import java.security.KeyException;
323 import java.security.KeyFactory;
324 import java.security.KeyFactorySpi;
325 import java.security.KeyManagementException;
326 import java.security.KeyPair;
327 import java.security.KeyPairGenerator;
328 import java.security.KeyPairGeneratorSpi;
329 import java.security.KeyRep;
330 import java.security.KeyStore;
331 import java.security.KeyStoreException;
332 import java.security.KeyStoreSpi;
333 import java.security.MessageDigest;
334 import java.security.MessageDigestSpi;
335 import java.security.NoSuchAlgorithmException;
336 import java.security.NoSuchProviderException;
337 import java.security.Permission;
338 import java.security.PermissionCollection;
339 import java.security.Permissions;
340 import java.security.Policy;
341 import java.security.PolicySpi;
342 import java.security.Principal;
343 import java.security.PrivateKey;
344 import java.security.PrivilegedAction;
345 import java.security.PrivilegedActionException;
346 import java.security.PrivilegedExceptionAction;
347 import java.security.ProtectionDomain;
348 import java.security.Provider;
349 import java.security.ProviderException;
350 import java.security.PublicKey;
351 import java.security.SecureClassLoader;
352 import java.security.SecureRandom;
353 import java.security.SecureRandomSpi;
354 import java.security.Security;
355 import java.security.SecurityPermission;
356 import java.security.Signature;
357 import java.security.SignatureException;
358 import java.security.SignatureSpi;
359 import java.security.SignedObject;
360 import java.security.Signer;
361 import java.security.UnrecoverableEntryException;
362 import java.security.UnrecoverableKeyException;
363 import java.security.UnresolvedPermission;
364 import java.sql.BatchUpdateException;
365 import java.sql.Blob;
366 import java.sql.CallableStatement;
367 import java.sql.Clob;
368 import java.sql.Connection;
369 import java.sql.DataTruncation;
370 import java.sql.DatabaseMetaData;
371 import java.sql.Driver;
372 import java.sql.DriverManager;
373 import java.sql.DriverPropertyInfo;
374 import java.sql.NClob;
375 import java.sql.ParameterMetaData;
376 import java.sql.PreparedStatement;
377 import java.sql.Ref;
378 import java.sql.ResultSet;
379 import java.sql.ResultSetMetaData;
380 import java.sql.RowId;
381 import java.sql.SQLClientInfoException;
382 import java.sql.SQLData;
383 import java.sql.SQLDataException;
384 import java.sql.SQLException;
385 import java.sql.SQLFeatureNotSupportedException;
386 import java.sql.SQLInput;
387 import java.sql.SQLIntegrityConstraintViolationException;
388 import java.sql.SQLInvalidAuthorizationSpecException;
389 import java.sql.SQLNonTransientConnectionException;
390 import java.sql.SQLNonTransientException;
391 import java.sql.SQLOutput;
392 import java.sql.SQLPermission;
393 import java.sql.SQLRecoverableException;
394 import java.sql.SQLSyntaxErrorException;
395 import java.sql.SQLTimeoutException;
396 import java.sql.SQLTransactionRollbackException;
397 import java.sql.SQLTransientConnectionException;
398 import java.sql.SQLTransientException;
399 import java.sql.SQLWarning;
400 import java.sql.SQLXML;
401 import java.sql.Savepoint;
402 import java.sql.Statement;
403 import java.sql.Struct;
404 import java.sql.Time;
405 import java.sql.Timestamp;
406 import java.sql.Types;
407 import java.sql.Wrapper;
408 import java.text.AttributedCharacterIterator;
409 import java.text.AttributedString;
410 import java.text.Bidi;
411 import java.text.BreakIterator;
412 import java.text.CharacterIterator;
413 import java.text.ChoiceFormat;
414 import java.text.CollationElementIterator;
415 import java.text.CollationKey;
416 import java.text.Collator;
417 import java.text.DateFormat;
418 import java.text.DateFormatSymbols;
419 import java.text.DecimalFormat;
420 import java.text.DecimalFormatSymbols;
421 import java.text.FieldPosition;
422 import java.text.Format;
423 import java.text.MessageFormat;
424 import java.text.Normalizer;
425 import java.text.NumberFormat;
426 import java.text.ParseException;
427 import java.text.ParsePosition;
428 import java.text.RuleBasedCollator;
429 import java.text.SimpleDateFormat;
430 import java.text.StringCharacterIterator;
431 import java.time.Clock;
432 import java.time.DateTimeException;
433 import java.time.DayOfWeek;
434 import java.time.Duration;
435 import java.time.Instant;
436 import java.time.LocalDate;
437 import java.time.LocalDateTime;
438 import java.time.LocalTime;
439 import java.time.Month;
440 import java.time.MonthDay;
441 import java.time.OffsetDateTime;
442 import java.time.OffsetTime;
443 import java.time.Period;
444 import java.time.Year;
445 import java.time.YearMonth;
446 import java.time.ZoneId;
447 import java.time.ZoneOffset;
448 import java.time.ZonedDateTime;
449 import java.time.chrono.AbstractChronology;
450 import java.time.chrono.ChronoLocalDate;
451 import java.time.chrono.ChronoLocalDateTime;
452 import java.time.chrono.ChronoPeriod;
453 import java.time.chrono.ChronoZonedDateTime;
454 import java.time.chrono.Chronology;
455 import java.time.chrono.Era;
456 import java.time.chrono.HijrahChronology;
457 import java.time.chrono.HijrahDate;
458 import java.time.chrono.HijrahEra;
459 import java.time.chrono.IsoChronology;
460 import java.time.chrono.IsoEra;
461 import java.time.chrono.JapaneseChronology;
462 import java.time.chrono.JapaneseDate;
463 import java.time.chrono.JapaneseEra;
464 import java.time.chrono.MinguoChronology;
465 import java.time.chrono.MinguoDate;
466 import java.time.chrono.MinguoEra;
467 import java.time.chrono.ThaiBuddhistChronology;
468 import java.time.chrono.ThaiBuddhistDate;
469 import java.time.chrono.ThaiBuddhistEra;
470 import java.time.format.DateTimeFormatter;
471 import java.time.format.DateTimeFormatterBuilder;
472 import java.time.format.DateTimeParseException;
473 import java.time.format.DecimalStyle;
474 import java.time.format.FormatStyle;
475 import java.time.format.ResolverStyle;
476 import java.time.format.SignStyle;
477 import java.time.format.TextStyle;
478 import java.time.temporal.ChronoField;
479 import java.time.temporal.ChronoUnit;
480 import java.time.temporal.IsoFields;
481 import java.time.temporal.JulianFields;
482 import java.time.temporal.Temporal;
483 import java.time.temporal.TemporalAccessor;
484 import java.time.temporal.TemporalAdjuster;
485 import java.time.temporal.TemporalAdjusters;
486 import java.time.temporal.TemporalAmount;
487 import java.time.temporal.TemporalField;
488 import java.time.temporal.TemporalQueries;
489 import java.time.temporal.TemporalQuery;
490 import java.time.temporal.TemporalUnit;
491 import java.time.temporal.UnsupportedTemporalTypeException;
492 import java.time.temporal.ValueRange;
493 import java.time.temporal.WeekFields;
494 import java.time.zone.ZoneOffsetTransition;
495 import java.time.zone.ZoneOffsetTransitionRule;
496 import java.time.zone.ZoneRules;
497 import java.time.zone.ZoneRulesException;
498 import java.time.zone.ZoneRulesProvider;
499 import java.util.AbstractCollection;
500 import java.util.AbstractList;
501 import java.util.AbstractMap;
502 import java.util.AbstractQueue;
503 import java.util.AbstractSequentialList;
504 import java.util.AbstractSet;
505 import java.util.ArrayDeque;
506 import java.util.ArrayList;
507 import java.util.Arrays;
508 import java.util.Base64;
509 import java.util.BitSet;
510 import java.util.Calendar;
511 import java.util.Collection;
512 import java.util.Collections;
513 import java.util.Comparator;
514 import java.util.ConcurrentModificationException;
515 import java.util.Currency;
516 import java.util.Date;
517 import java.util.Deque;
518 import java.util.Dictionary;
519 import java.util.DoubleSummaryStatistics;
520 import java.util.DuplicateFormatFlagsException;
521 import java.util.EmptyStackException;
522 import java.util.EnumMap;
523 import java.util.EnumSet;
524 import java.util.Enumeration;
525 import java.util.EventListener;
526 import java.util.EventListenerProxy;
527 import java.util.EventObject;
528 import java.util.FormatFlagsConversionMismatchException;
529 import java.util.Formattable;
530 import java.util.FormattableFlags;
531 import java.util.Formatter;
532 import java.util.FormatterClosedException;
533 import java.util.GregorianCalendar;
534 import java.util.HashMap;
535 import java.util.HashSet;
536 import java.util.Hashtable;
537 import java.util.IdentityHashMap;
538 import java.util.IllegalFormatCodePointException;
539 import java.util.IllegalFormatConversionException;
540 import java.util.IllegalFormatException;
541 import java.util.IllegalFormatFlagsException;
542 import java.util.IllegalFormatPrecisionException;
543 import java.util.IllegalFormatWidthException;
544 import java.util.IllformedLocaleException;
545 import java.util.InputMismatchException;
546 import java.util.IntSummaryStatistics;
547 import java.util.InvalidPropertiesFormatException;
548 import java.util.Iterator;
549 import java.util.LinkedHashMap;
550 import java.util.LinkedHashSet;
551 import java.util.LinkedList;
552 import java.util.List;
553 import java.util.ListIterator;
554 import java.util.ListResourceBundle;
555 import java.util.Locale;
556 import java.util.LongSummaryStatistics;
557 import java.util.Map;
558 import java.util.MissingFormatArgumentException;
559 import java.util.MissingFormatWidthException;
560 import java.util.MissingResourceException;
561 import java.util.NavigableMap;
562 import java.util.NavigableSet;
563 import java.util.NoSuchElementException;
564 import java.util.Objects;
565 import java.util.Observable;
566 import java.util.Observer;
567 import java.util.Optional;
568 import java.util.OptionalDouble;
569 import java.util.OptionalInt;
570 import java.util.OptionalLong;
571 import java.util.PrimitiveIterator;
572 import java.util.PriorityQueue;
573 import java.util.Properties;
574 import java.util.PropertyPermission;
575 import java.util.PropertyResourceBundle;
576 import java.util.Queue;
577 import java.util.Random;
578 import java.util.RandomAccess;
579 import java.util.ResourceBundle;
580 import java.util.Scanner;
581 import java.util.ServiceConfigurationError;
582 import java.util.ServiceLoader;
583 import java.util.Set;
584 import java.util.SimpleTimeZone;
585 import java.util.SortedMap;
586 import java.util.SortedSet;
587 import java.util.Spliterator;
588 import java.util.Spliterators;
589 import java.util.SplittableRandom;
590 import java.util.Stack;
591 import java.util.StringJoiner;
592 import java.util.StringTokenizer;
593 import java.util.TimeZone;
594 import java.util.Timer;
595 import java.util.TimerTask;
596 import java.util.TooManyListenersException;
597 import java.util.TreeMap;
598 import java.util.TreeSet;
599 import java.util.UUID;
600 import java.util.UnknownFormatConversionException;
601 import java.util.UnknownFormatFlagsException;
602 import java.util.Vector;
603 import java.util.WeakHashMap;
604 import java.util.concurrent.AbstractExecutorService;
605 import java.util.concurrent.ArrayBlockingQueue;
606 import java.util.concurrent.BlockingDeque;
607 import java.util.concurrent.BlockingQueue;
608 import java.util.concurrent.BrokenBarrierException;
609 import java.util.concurrent.Callable;
610 import java.util.concurrent.CancellationException;
611 import java.util.concurrent.CompletableFuture;
612 import java.util.concurrent.CompletionException;
613 import java.util.concurrent.CompletionService;
614 import java.util.concurrent.ConcurrentHashMap;
615 import java.util.concurrent.ConcurrentLinkedDeque;
616 import java.util.concurrent.ConcurrentLinkedQueue;
617 import java.util.concurrent.ConcurrentMap;
618 import java.util.concurrent.ConcurrentNavigableMap;
619 import java.util.concurrent.ConcurrentSkipListMap;
620 import java.util.concurrent.ConcurrentSkipListSet;
621 import java.util.concurrent.CopyOnWriteArrayList;
622 import java.util.concurrent.CopyOnWriteArraySet;
623 import java.util.concurrent.CountDownLatch;
624 import java.util.concurrent.CountedCompleter;
625 import java.util.concurrent.CyclicBarrier;
626 import java.util.concurrent.DelayQueue;
627 import java.util.concurrent.Delayed;
628 import java.util.concurrent.Exchanger;
629 import java.util.concurrent.ExecutionException;
630 import java.util.concurrent.Executor;
631 import java.util.concurrent.ExecutorCompletionService;
632 import java.util.concurrent.ExecutorService;
633 import java.util.concurrent.Executors;
634 import java.util.concurrent.ForkJoinPool;
635 import java.util.concurrent.ForkJoinTask;
636 import java.util.concurrent.ForkJoinWorkerThread;
637 import java.util.concurrent.Future;
638 import java.util.concurrent.FutureTask;
639 import java.util.concurrent.LinkedBlockingDeque;
640 import java.util.concurrent.LinkedBlockingQueue;
641 import java.util.concurrent.LinkedTransferQueue;
642 import java.util.concurrent.Phaser;
643 import java.util.concurrent.PriorityBlockingQueue;
644 import java.util.concurrent.RecursiveAction;
645 import java.util.concurrent.RecursiveTask;
646 import java.util.concurrent.RejectedExecutionException;
647 import java.util.concurrent.RejectedExecutionHandler;
648 import java.util.concurrent.RunnableFuture;
649 import java.util.concurrent.RunnableScheduledFuture;
650 import java.util.concurrent.ScheduledExecutorService;
651 import java.util.concurrent.ScheduledFuture;
652 import java.util.concurrent.ScheduledThreadPoolExecutor;
653 import java.util.concurrent.Semaphore;
654 import java.util.concurrent.SynchronousQueue;
655 import java.util.concurrent.ThreadFactory;
656 import java.util.concurrent.ThreadLocalRandom;
657 import java.util.concurrent.ThreadPoolExecutor;
658 import java.util.concurrent.TimeUnit;
659 import java.util.concurrent.TimeoutException;
660 import java.util.concurrent.TransferQueue;
661 import java.util.concurrent.atomic.AtomicBoolean;
662 import java.util.concurrent.atomic.AtomicInteger;
663 import java.util.concurrent.atomic.AtomicIntegerArray;
664 import java.util.concurrent.atomic.AtomicIntegerFieldUpdater;
665 import java.util.concurrent.atomic.AtomicLong;
666 import java.util.concurrent.atomic.AtomicLongArray;
667 import java.util.concurrent.atomic.AtomicLongFieldUpdater;
668 import java.util.concurrent.atomic.AtomicMarkableReference;
669 import java.util.concurrent.atomic.AtomicReference;
670 import java.util.concurrent.atomic.AtomicReferenceArray;
671 import java.util.concurrent.atomic.AtomicReferenceFieldUpdater;
672 import java.util.concurrent.atomic.AtomicStampedReference;
673 import java.util.concurrent.atomic.DoubleAccumulator;
674 import java.util.concurrent.atomic.DoubleAdder;
675 import java.util.concurrent.atomic.LongAccumulator;
676 import java.util.concurrent.atomic.LongAdder;
677 import java.util.concurrent.locks.AbstractOwnableSynchronizer;
678 import java.util.concurrent.locks.AbstractQueuedLongSynchronizer;
679 import java.util.concurrent.locks.AbstractQueuedSynchronizer;
680 import java.util.concurrent.locks.Condition;
681 import java.util.concurrent.locks.Lock;
682 import java.util.concurrent.locks.LockSupport;
683 import java.util.concurrent.locks.ReadWriteLock;
684 import java.util.concurrent.locks.ReentrantLock;
685 import java.util.concurrent.locks.ReentrantReadWriteLock;
686 import java.util.concurrent.locks.StampedLock;
687 import java.util.function.BiConsumer;
688 import java.util.function.BiFunction;
689 import java.util.function.BiPredicate;
690 import java.util.function.BinaryOperator;
691 import java.util.function.BooleanSupplier;
692 import java.util.function.Consumer;
693 import java.util.function.DoubleBinaryOperator;
694 import java.util.function.DoubleConsumer;
695 import java.util.function.DoubleFunction;
696 import java.util.function.DoublePredicate;
697 import java.util.function.DoubleSupplier;
698 import java.util.function.DoubleToIntFunction;
699 import java.util.function.DoubleToLongFunction;
700 import java.util.function.DoubleUnaryOperator;
701 import java.util.function.Function;
702 import java.util.function.IntBinaryOperator;
703 import java.util.function.IntConsumer;
704 import java.util.function.IntFunction;
705 import java.util.function.IntPredicate;
706 import java.util.function.IntSupplier;
707 import java.util.function.IntToDoubleFunction;
708 import java.util.function.IntToLongFunction;
709 import java.util.function.IntUnaryOperator;
710 import java.util.function.LongBinaryOperator;
711 import java.util.function.LongConsumer;
712 import java.util.function.LongFunction;
713 import java.util.function.LongPredicate;
714 import java.util.function.LongSupplier;
715 import java.util.function.LongToDoubleFunction;
716 import java.util.function.LongToIntFunction;
717 import java.util.function.LongUnaryOperator;
718 import java.util.function.ObjDoubleConsumer;
719 import java.util.function.ObjIntConsumer;
720 import java.util.function.ObjLongConsumer;
721 import java.util.function.Predicate;
722 import java.util.function.Supplier;
723 import java.util.function.ToDoubleBiFunction;
724 import java.util.function.ToDoubleFunction;
725 import java.util.function.ToIntBiFunction;
726 import java.util.function.ToIntFunction;
727 import java.util.function.ToLongBiFunction;
728 import java.util.function.ToLongFunction;
729 import java.util.function.UnaryOperator;
730 import java.util.regex.MatchResult;
731 import java.util.regex.Matcher;
732 import java.util.regex.Pattern;
733 import java.util.regex.PatternSyntaxException;
734 import java.util.stream.BaseStream;
735 import java.util.stream.Collector;
736 import java.util.stream.Collectors;
737 import java.util.stream.DoubleStream;
738 import java.util.stream.IntStream;
739 import java.util.stream.LongStream;
740 import java.util.stream.Stream;
741 import java.util.stream.StreamSupport;
742
743 public class Java8PublicClasses {
744
745
746 private static final Class<?>[] JAVA_IO = { BufferedInputStream.class, BufferedOutputStream.class, BufferedReader.class, BufferedWriter.class,
747 ByteArrayInputStream.class, ByteArrayOutputStream.class, CharArrayReader.class, CharArrayWriter.class, Closeable.class, Console.class,
748 DataInput.class, DataInputStream.class, DataOutput.class, DataOutputStream.class, File.class, FileDescriptor.class, FileInputStream.class,
749 FileOutputStream.class, FilePermission.class, FileReader.class, FileWriter.class, FilterInputStream.class, FilterOutputStream.class,
750 FilterReader.class, FilterWriter.class, Flushable.class, InputStream.class, InputStreamReader.class, LineNumberReader.class, ObjectInput.class,
751 ObjectInputStream.class, ObjectOutput.class, ObjectOutputStream.class, ObjectStreamClass.class, ObjectStreamField.class, OutputStream.class,
752 OutputStreamWriter.class, PipedInputStream.class, PipedOutputStream.class, PipedReader.class, PipedWriter.class, PrintStream.class,
753 PrintWriter.class, PushbackInputStream.class, PushbackReader.class, RandomAccessFile.class, Reader.class, SequenceInputStream.class,
754 Serializable.class, SerializablePermission.class, StreamTokenizer.class, StringReader.class, StringWriter.class, Writer.class, Externalizable.class,
755 FileFilter.class, FilenameFilter.class, ObjectInputValidation.class,
756
757 CharConversionException.class, EOFException.class, FileNotFoundException.class, InterruptedIOException.class, InvalidClassException.class,
758 InvalidObjectException.class, IOException.class, NotActiveException.class, NotSerializableException.class, ObjectStreamException.class,
759 OptionalDataException.class, StreamCorruptedException.class, SyncFailedException.class, UnsupportedEncodingException.class,
760 UTFDataFormatException.class, WriteAbortedException.class, UncheckedIOException.class };
761
762
763 private static final Class<?>[] JAVA_LANG = { Appendable.class, AutoCloseable.class, Boolean.class, Byte.class, CharSequence.class, Character.class,
764 Class.class, ClassLoader.class, ClassValue.class, Cloneable.class, Comparable.class, Double.class, Enum.class, Float.class,
765 InheritableThreadLocal.class, Integer.class, Iterable.class, Long.class, Math.class, Number.class, Object.class, Package.class, Process.class,
766 ProcessBuilder.class, Readable.class, Runnable.class, Runtime.class, RuntimePermission.class, SecurityManager.class, Short.class,
767 StackTraceElement.class, StrictMath.class, String.class, StringBuffer.class, StringBuilder.class, System.class, Thread.class, ThreadGroup.class,
768 ThreadLocal.class, Throwable.class, Void.class,
769
770 ArithmeticException.class, ArrayIndexOutOfBoundsException.class, ArrayStoreException.class, ClassCastException.class, ClassNotFoundException.class,
771 CloneNotSupportedException.class, EnumConstantNotPresentException.class, Exception.class, IllegalAccessException.class,
772 IllegalArgumentException.class, IllegalMonitorStateException.class, IllegalStateException.class, IllegalThreadStateException.class,
773 IndexOutOfBoundsException.class, InstantiationException.class, InterruptedException.class, NegativeArraySizeException.class,
774 NoSuchFieldException.class, NoSuchMethodException.class, NullPointerException.class, NumberFormatException.class,
775 ReflectiveOperationException.class, RuntimeException.class, SecurityException.class, StringIndexOutOfBoundsException.class,
776 TypeNotPresentException.class, UnsupportedOperationException.class,
777
778 AbstractMethodError.class, AssertionError.class, BootstrapMethodError.class, ClassCircularityError.class, ClassFormatError.class, Error.class,
779 ExceptionInInitializerError.class, IllegalAccessError.class, IncompatibleClassChangeError.class, InstantiationError.class, InternalError.class,
780 LinkageError.class, NoClassDefFoundError.class, NoSuchFieldError.class, NoSuchMethodError.class, OutOfMemoryError.class, StackOverflowError.class,
781 ThreadDeath.class, UnknownError.class, UnsatisfiedLinkError.class, UnsupportedClassVersionError.class, VerifyError.class,
782 VirtualMachineError.class };
783
784
785 private static final Class<?>[] JAVA_LANG_ANNOTATION = { Annotation.class, Documented.class, Inherited.class, Retention.class, Target.class,
786 AnnotationFormatError.class, AnnotationTypeMismatchException.class, IncompleteAnnotationException.class, Repeatable.class, Native.class };
787
788
789 private static final Class<?>[] JAVA_LANG_INVOKE = { CallSite.class, ConstantCallSite.class, MethodHandle.class, MethodHandleInfo.class,
790 MethodHandles.class, MethodType.class, MutableCallSite.class, SwitchPoint.class, VolatileCallSite.class, WrongMethodTypeException.class,
791 LambdaMetafactory.class };
792
793
794 private static final Class<?>[] JAVA_LANG_REF = { PhantomReference.class, Reference.class, ReferenceQueue.class, SoftReference.class,
795 WeakReference.class };
796
797
798 private static final Class<?>[] JAVA_LANG_REFLECT = { AccessibleObject.class, AnnotatedElement.class, Array.class, Constructor.class,
799 Executable.class, Field.class, GenericArrayType.class, GenericDeclaration.class, InvocationHandler.class, Member.class, Method.class,
800 Modifier.class, Parameter.class, ParameterizedType.class, Proxy.class, ReflectPermission.class, Type.class, TypeVariable.class, WildcardType.class,
801 AnnotatedType.class, AnnotatedArrayType.class, AnnotatedParameterizedType.class, AnnotatedTypeVariable.class, AnnotatedWildcardType.class,
802 InvocationTargetException.class, MalformedParameterizedTypeException.class, UndeclaredThrowableException.class };
803
804
805 private static final Class<?>[] JAVA_MATH = { BigDecimal.class, BigInteger.class, MathContext.class, RoundingMode.class };
806
807
808 private static final Class<?>[] JAVA_NET = { Authenticator.class, CacheRequest.class, CacheResponse.class, ContentHandler.class,
809 CookieHandler.class, CookieManager.class, CookiePolicy.class, CookieStore.class, DatagramPacket.class, DatagramSocket.class,
810 DatagramSocketImpl.class, FileNameMap.class, HttpCookie.class, HttpURLConnection.class, IDN.class, Inet4Address.class, Inet6Address.class,
811 InetAddress.class, InetSocketAddress.class, InterfaceAddress.class, JarURLConnection.class, MulticastSocket.class, NetPermission.class,
812 NetworkInterface.class, PasswordAuthentication.class, Proxy.class, ProxySelector.class, ResponseCache.class, SecureCacheResponse.class,
813 ServerSocket.class, Socket.class, SocketAddress.class, SocketImpl.class, SocketOption.class, SocketOptions.class, SocketPermission.class,
814 StandardProtocolFamily.class, StandardSocketOptions.class, URI.class, URL.class, URLClassLoader.class, URLConnection.class, URLDecoder.class,
815 URLEncoder.class, URLStreamHandler.class, BindException.class, ConnectException.class, HttpRetryException.class, MalformedURLException.class,
816 NoRouteToHostException.class, PortUnreachableException.class, ProtocolException.class, SocketException.class, SocketTimeoutException.class,
817 UnknownHostException.class, UnknownServiceException.class, URISyntaxException.class };
818
819
820 private static final Class<?>[] JAVA_NIO = { Buffer.class, ByteBuffer.class, ByteOrder.class, CharBuffer.class, DoubleBuffer.class,
821 FloatBuffer.class, IntBuffer.class, LongBuffer.class, MappedByteBuffer.class, ShortBuffer.class, BufferOverflowException.class,
822 BufferUnderflowException.class, InvalidMarkException.class, ReadOnlyBufferException.class };
823
824
825 private static final Class<?>[] JAVA_NIO_CHARSET = { Charset.class, CharsetDecoder.class, CharsetEncoder.class, CoderResult.class,
826 CodingErrorAction.class, StandardCharsets.class, CharacterCodingException.class, IllegalCharsetNameException.class, MalformedInputException.class,
827 UnmappableCharacterException.class, UnsupportedCharsetException.class };
828
829
830 private static final Class<?>[] JAVA_NIO_FILE = { DirectoryStream.class, FileSystem.class, FileSystems.class, FileVisitOption.class,
831 FileVisitResult.class, FileVisitor.class, Files.class, LinkOption.class, OpenOption.class, Path.class, PathMatcher.class, Paths.class,
832 SimpleFileVisitor.class, StandardCopyOption.class, StandardOpenOption.class, StandardWatchEventKinds.class, WatchEvent.class, WatchKey.class,
833 WatchService.class, Watchable.class, AccessDeniedException.class, AtomicMoveNotSupportedException.class, ClosedDirectoryStreamException.class,
834 ClosedFileSystemException.class, ClosedWatchServiceException.class, DirectoryIteratorException.class, DirectoryNotEmptyException.class,
835 FileAlreadyExistsException.class, FileSystemException.class, FileSystemLoopException.class, FileSystemNotFoundException.class,
836 InvalidPathException.class, NoSuchFileException.class, NotDirectoryException.class, NotLinkException.class, ProviderMismatchException.class,
837 ProviderNotFoundException.class, ReadOnlyFileSystemException.class };
838
839
840 private static final Class<?>[] JAVA_NIO_FILE_ATTRIBUTE = { AclEntry.class, AclEntryFlag.class, AclEntryPermission.class, AclEntryType.class,
841 AclFileAttributeView.class, AttributeView.class, BasicFileAttributeView.class, BasicFileAttributes.class, DosFileAttributeView.class,
842 DosFileAttributes.class, FileAttribute.class, FileAttributeView.class, FileOwnerAttributeView.class, FileStoreAttributeView.class, FileTime.class,
843 GroupPrincipal.class, PosixFileAttributeView.class, PosixFileAttributes.class, PosixFilePermission.class, PosixFilePermissions.class,
844 UserDefinedFileAttributeView.class, UserPrincipal.class, UserPrincipalLookupService.class, UserPrincipalNotFoundException.class };
845
846
847 private static final Class<?>[] JAVA_SECURITY = { AccessControlContext.class, AccessController.class, AlgorithmParameterGenerator.class,
848 AlgorithmParameters.class, AlgorithmParametersSpi.class, AllPermission.class, AuthProvider.class, BasicPermission.class, Certificate.class,
849 CodeSigner.class, CodeSource.class, DigestInputStream.class, DigestOutputStream.class, DomainCombiner.class, Guard.class, GuardedObject.class,
850 Identity.class, IdentityScope.class, Key.class, KeyFactory.class, KeyFactorySpi.class, KeyPair.class, KeyPairGenerator.class,
851 KeyPairGeneratorSpi.class, KeyRep.class, KeyStore.class, KeyStoreSpi.class, MessageDigest.class, MessageDigestSpi.class, Permission.class,
852 PermissionCollection.class, Permissions.class, Policy.class, PolicySpi.class, Principal.class, PrivateKey.class, PrivilegedAction.class,
853 PrivilegedActionException.class, PrivilegedExceptionAction.class, ProtectionDomain.class, Provider.class, PublicKey.class, SecureClassLoader.class,
854 SecureRandom.class, SecureRandomSpi.class, Security.class, SecurityPermission.class, Signature.class, SignatureException.class, SignatureSpi.class,
855 SignedObject.class, Signer.class, java.security.Timestamp.class, UnrecoverableEntryException.class, UnrecoverableKeyException.class,
856 UnresolvedPermission.class, AccessControlException.class, DigestException.class, GeneralSecurityException.class,
857 InvalidAlgorithmParameterException.class, InvalidKeyException.class, InvalidParameterException.class, KeyException.class,
858 KeyManagementException.class, KeyStoreException.class, NoSuchAlgorithmException.class, NoSuchProviderException.class, ProviderException.class };
859
860
861 private static final Class<?>[] JAVA_SQL = { Array.class, Blob.class, CallableStatement.class, Clob.class, Connection.class, DatabaseMetaData.class,
862 java.sql.Date.class, Driver.class, DriverManager.class, DriverPropertyInfo.class, NClob.class, ParameterMetaData.class, PreparedStatement.class,
863 Ref.class, ResultSet.class, ResultSetMetaData.class, RowId.class, Savepoint.class, SQLData.class, SQLInput.class, SQLOutput.class,
864 SQLPermission.class, SQLXML.class, Statement.class, Struct.class, Time.class, Timestamp.class, Types.class, Wrapper.class,
865 BatchUpdateException.class, DataTruncation.class, SQLClientInfoException.class, SQLException.class, SQLDataException.class,
866 SQLFeatureNotSupportedException.class, SQLIntegrityConstraintViolationException.class, SQLInvalidAuthorizationSpecException.class,
867 SQLNonTransientConnectionException.class, SQLNonTransientException.class, SQLRecoverableException.class, SQLSyntaxErrorException.class,
868 SQLTimeoutException.class, SQLTransactionRollbackException.class, SQLTransientConnectionException.class, SQLTransientException.class,
869 SQLWarning.class };
870
871
872 private static final Class<?>[] JAVA_TEXT = { Annotation.class, AttributedCharacterIterator.class, AttributedString.class, Bidi.class,
873 BreakIterator.class, CharacterIterator.class, ChoiceFormat.class, CollationElementIterator.class, CollationKey.class, Collator.class,
874 DateFormat.class, DateFormatSymbols.class, DecimalFormat.class, DecimalFormatSymbols.class, FieldPosition.class, Format.class, MessageFormat.class,
875 Normalizer.class, NumberFormat.class, ParsePosition.class, RuleBasedCollator.class, SimpleDateFormat.class, StringCharacterIterator.class,
876 ParseException.class };
877
878
879 private static final Class<?>[] JAVA_TIME = { Clock.class, DateTimeException.class, DayOfWeek.class, Duration.class, Instant.class, LocalDate.class,
880 LocalDateTime.class, LocalTime.class, Month.class, MonthDay.class, OffsetDateTime.class, OffsetTime.class, Period.class, Year.class,
881 YearMonth.class, ZonedDateTime.class, ZoneId.class, ZoneOffset.class };
882
883
884 private static final Class<?>[] JAVA_TIME_CHRONO = { AbstractChronology.class, ChronoLocalDate.class, ChronoLocalDateTime.class, Chronology.class,
885 ChronoPeriod.class, ChronoZonedDateTime.class, Era.class, HijrahChronology.class, HijrahDate.class, HijrahEra.class, IsoChronology.class,
886 IsoEra.class, JapaneseChronology.class, JapaneseDate.class, JapaneseEra.class, MinguoChronology.class, MinguoDate.class, MinguoEra.class,
887 ThaiBuddhistChronology.class, ThaiBuddhistDate.class, ThaiBuddhistEra.class };
888
889
890 private static final Class<?>[] JAVA_TIME_FORMAT = { DateTimeFormatter.class, DateTimeFormatterBuilder.class, DateTimeParseException.class,
891 DecimalStyle.class, FormatStyle.class, ResolverStyle.class, SignStyle.class, TextStyle.class };
892
893
894 private static final Class<?>[] JAVA_TIME_TEMPORAL = { ChronoField.class, ChronoUnit.class, IsoFields.class, JulianFields.class, Temporal.class,
895 TemporalAccessor.class, TemporalAdjuster.class, TemporalAdjusters.class, TemporalAmount.class, TemporalField.class, TemporalQueries.class,
896 TemporalQuery.class, TemporalUnit.class, ValueRange.class, WeekFields.class, UnsupportedTemporalTypeException.class };
897
898
899 private static final Class<?>[] JAVA_TIME_ZONE = { ZoneOffsetTransition.class, ZoneOffsetTransitionRule.class, ZoneRules.class,
900 ZoneRulesException.class, ZoneRulesProvider.class };
901
902
903 private static final Class<?>[] JAVA_UTIL = { AbstractCollection.class, AbstractList.class, AbstractMap.class, AbstractQueue.class,
904 AbstractSequentialList.class, AbstractSet.class, ArrayDeque.class, ArrayList.class, Arrays.class, Base64.class, BitSet.class, Calendar.class,
905 Collection.class, Collections.class, Comparator.class, Currency.class, Date.class, Deque.class, Dictionary.class, DoubleSummaryStatistics.class,
906 EnumMap.class, EnumSet.class, Enumeration.class, EventListener.class, EventListenerProxy.class, EventObject.class, FormattableFlags.class,
907 Formatter.class, GregorianCalendar.class, HashMap.class, HashSet.class, Hashtable.class, IdentityHashMap.class, IntSummaryStatistics.class,
908 Iterator.class, LinkedHashMap.class, LinkedHashSet.class, LinkedList.class, List.class, ListIterator.class, ListResourceBundle.class, Locale.class,
909 LongSummaryStatistics.class, Map.class, NavigableMap.class, NavigableSet.class, Objects.class, Observable.class, Observer.class, Optional.class,
910 OptionalDouble.class, OptionalInt.class, OptionalLong.class, PrimitiveIterator.class, PriorityQueue.class, Properties.class,
911 PropertyPermission.class, PropertyResourceBundle.class, Queue.class, Random.class, RandomAccess.class, ResourceBundle.class, Scanner.class,
912 ServiceLoader.class, Set.class, SimpleTimeZone.class, SortedMap.class, SortedSet.class, Spliterator.class, Spliterators.class,
913 SplittableRandom.class, Stack.class, StringJoiner.class, StringTokenizer.class, Timer.class, TimerTask.class, TimeZone.class, TreeMap.class,
914 TreeSet.class, UUID.class, Vector.class, WeakHashMap.class, Formattable.class,
915
916 ConcurrentModificationException.class, DuplicateFormatFlagsException.class, EmptyStackException.class, FormatFlagsConversionMismatchException.class,
917 FormatterClosedException.class, IllegalFormatCodePointException.class, IllegalFormatConversionException.class, IllegalFormatException.class,
918 IllegalFormatFlagsException.class, IllegalFormatPrecisionException.class, IllegalFormatWidthException.class, IllformedLocaleException.class,
919 InputMismatchException.class, InvalidPropertiesFormatException.class, MissingFormatArgumentException.class, MissingFormatWidthException.class,
920 MissingResourceException.class, NoSuchElementException.class, TooManyListenersException.class, UnknownFormatConversionException.class,
921 UnknownFormatFlagsException.class, ServiceConfigurationError.class };
922
923
924 private static final Class<?>[] JAVA_UTIL_CONCURRENT = { AbstractExecutorService.class, ArrayBlockingQueue.class, BlockingDeque.class,
925 BlockingQueue.class, Callable.class, CompletableFuture.class, CompletionException.class, CompletionService.class, ConcurrentHashMap.class,
926 ConcurrentLinkedDeque.class, ConcurrentLinkedQueue.class, ConcurrentMap.class, ConcurrentNavigableMap.class, ConcurrentSkipListMap.class,
927 ConcurrentSkipListSet.class, CopyOnWriteArrayList.class, CopyOnWriteArraySet.class, CountDownLatch.class, CountedCompleter.class,
928 CyclicBarrier.class, Delayed.class, DelayQueue.class, Exchanger.class, Executor.class, ExecutorCompletionService.class, ExecutorService.class,
929 Executors.class, ForkJoinPool.class, ForkJoinTask.class, ForkJoinWorkerThread.class, Future.class, FutureTask.class, LinkedBlockingDeque.class,
930 LinkedBlockingQueue.class, LinkedTransferQueue.class, Phaser.class, PriorityBlockingQueue.class, RecursiveAction.class, RecursiveTask.class,
931 RejectedExecutionHandler.class, RunnableFuture.class, RunnableScheduledFuture.class, ScheduledExecutorService.class, ScheduledFuture.class,
932 ScheduledThreadPoolExecutor.class, Semaphore.class, SynchronousQueue.class, ThreadFactory.class, ThreadLocalRandom.class, ThreadPoolExecutor.class,
933 TimeUnit.class, TransferQueue.class, BrokenBarrierException.class, CancellationException.class, CompletionException.class, ExecutionException.class,
934 RejectedExecutionException.class, TimeoutException.class };
935
936
937 private static final Class<?>[] JAVA_UTIL_CONCURRENT_ATOMIC = { AtomicBoolean.class, AtomicInteger.class, AtomicIntegerArray.class,
938 AtomicIntegerFieldUpdater.class, AtomicLong.class, AtomicLongArray.class, AtomicLongFieldUpdater.class, AtomicMarkableReference.class,
939 AtomicReference.class, AtomicReferenceArray.class, AtomicReferenceFieldUpdater.class, AtomicStampedReference.class, DoubleAccumulator.class,
940 DoubleAdder.class, LongAccumulator.class, LongAdder.class };
941
942
943 private static final Class<?>[] JAVA_UTIL_CONCURRENT_LOCKS = { AbstractOwnableSynchronizer.class, AbstractQueuedLongSynchronizer.class,
944 AbstractQueuedSynchronizer.class, Condition.class, Lock.class, LockSupport.class, ReadWriteLock.class, ReentrantLock.class,
945 ReentrantReadWriteLock.class, StampedLock.class };
946
947
948 private static final Class<?>[] JAVA_UTIL_FUNCTION = { BiConsumer.class, BiFunction.class, BinaryOperator.class, BiPredicate.class,
949 BooleanSupplier.class, Consumer.class, DoubleBinaryOperator.class, DoubleConsumer.class, DoubleFunction.class, DoublePredicate.class,
950 DoubleSupplier.class, DoubleToIntFunction.class, DoubleToLongFunction.class, DoubleUnaryOperator.class, Function.class, IntBinaryOperator.class,
951 IntConsumer.class, IntFunction.class, IntPredicate.class, IntSupplier.class, IntToDoubleFunction.class, IntToLongFunction.class,
952 IntUnaryOperator.class, LongBinaryOperator.class, LongConsumer.class, LongFunction.class, LongPredicate.class, LongSupplier.class,
953 LongToDoubleFunction.class, LongToIntFunction.class, LongUnaryOperator.class, ObjDoubleConsumer.class, ObjIntConsumer.class, ObjLongConsumer.class,
954 Predicate.class, Supplier.class, ToDoubleBiFunction.class, ToDoubleFunction.class, ToIntBiFunction.class, ToIntFunction.class,
955 ToLongBiFunction.class, ToLongFunction.class, UnaryOperator.class };
956
957
958 private static final Class<?>[] JAVA_UTIL_REGEX = { MatchResult.class, Matcher.class, Pattern.class, PatternSyntaxException.class };
959
960
961 private static final Class<?>[] JAVA_UTIL_STREAM = { BaseStream.class, Collector.class, Collectors.class, DoubleStream.class, IntStream.class,
962 LongStream.class, Stream.class, StreamSupport.class };
963
964 private static final Class<?>[] ALL = addAll(JAVA_LANG, JAVA_LANG_ANNOTATION, JAVA_LANG_INVOKE,
965 JAVA_LANG_REF, JAVA_LANG_REFLECT, JAVA_MATH, JAVA_IO, JAVA_NIO, JAVA_NIO_CHARSET,
966 JAVA_NIO_FILE, JAVA_NIO_FILE_ATTRIBUTE, JAVA_UTIL, JAVA_UTIL_CONCURRENT, JAVA_UTIL_CONCURRENT_ATOMIC,
967 JAVA_UTIL_CONCURRENT_LOCKS, JAVA_UTIL_FUNCTION, JAVA_UTIL_STREAM, JAVA_UTIL_REGEX, JAVA_TIME,
968 JAVA_TIME_CHRONO, JAVA_TIME_FORMAT, JAVA_TIME_TEMPORAL, JAVA_TIME_ZONE, JAVA_NET, JAVA_TEXT,
969 JAVA_SQL, JAVA_SECURITY);
970
971 @SafeVarargs
972 private static Class<?>[] addAll(final Class<?>[]... arrays) {
973 int newLen = 0;
974 for (final Class<?>[] array : arrays) {
975 newLen += array.length;
976 }
977 final Class<?>[] result = new Class<?>[newLen];
978 int i = 0;
979 for (final Class<?>[] array : arrays) {
980 System.arraycopy(array, 0, result, i, array.length);
981 i += array.length;
982 }
983 return result;
984 }
985
986 public static Class<?>[] getAll() {
987 return ALL.clone();
988 }
989 }