Skip to content

Instantly share code, notes, and snippets.

@timyates
Last active August 29, 2015 14:00
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save timyates/329775cbeccbce0c8fd6 to your computer and use it in GitHub Desktop.
Save timyates/329775cbeccbce0c8fd6 to your computer and use it in GitHub Desktop.
New things in Java 7 and 8

##New stuff in Java 1.7

Method or Field: java.applet.Applet.isValidateRoot

Method or Field: java.awt.Component.revalidate

Method or Field: java.awt.Container.isValidateRoot

Method or Field: java.awt.event.InvocationEvent.isDispatched

Method or Field: java.awt.event.KeyEvent.getExtendedKeyCode

Method or Field: java.awt.event.MouseWheelEvent.MouseWheelEvent

Method or Field: java.awt.EventQueue.createSecondaryLoop

Method or Field: java.awt.FileDialog.getFiles

Method or Field: java.awt.font.NumericShaper.getShaper

Class java.awt.font.NumericShaper.Range

Method or Field: java.awt.GraphicsConfiguration.isTranslucencyCapable

Method or Field: java.awt.GraphicsDevice.isWindowTranslucencySupported

Class java.awt.GraphicsDevice.WindowTranslucency

Class java.awt.SecondaryLoop

Method or Field: java.awt.Toolkit.areExtraMouseButtonsEnabled

Method or Field: java.awt.Window.setAutoRequestFocus

Class java.awt.Window.Type

Method or Field: java.beans.Expression.execute

Method or Field: java.beans.FeatureDescriptor.toString

Method or Field: java.beans.Introspector.getBeanInfo

Method or Field: java.beans.PropertyChangeEvent.toString

Class java.beans.Transient

Method or Field: java.beans.XMLDecoder.XMLDecoder

Method or Field: java.beans.XMLEncoder.XMLEncoder

Method or Field: java.io.File.toPath

Method or Field: java.lang.AssertionError.AssertionError

Class java.lang.AutoCloseable

Method or Field: java.lang.Boolean.compare

Class java.lang.BootstrapMethodError

Method or Field: java.lang.Byte.compare

Method or Field: java.lang.Character.isBmpCodePoint

Method or Field: java.lang.Character.UnicodeBlock.ARABIC_SUPPLEMENT

Class java.lang.Character.UnicodeScript

Method or Field: java.lang.ClassLoader.getClassLoadingLock

Class java.lang.ClassValue

Method or Field: java.lang.Error.Error

Method or Field: java.lang.Exception.Exception

Method or Field: java.lang.Integer.compare

Class java.lang.invoke.MethodHandles

Class java.lang.invoke.WrongMethodTypeException

Method or Field: java.lang.LinkageError.LinkageError

Method or Field: java.lang.Long.compare

Class java.lang.management.BufferPoolMXBean

Method or Field: java.lang.management.ManagementFactory.getPlatformMXBean

Class java.lang.management.PlatformLoggingMXBean

Class java.lang.management.PlatformManagedObject

Method or Field: java.lang.ProcessBuilder.redirectInput

Class java.lang.ProcessBuilder.Redirect

Method or Field: java.lang.reflect.Modifier.classModifiers

Class java.lang.ReflectiveOperationException

Method or Field: java.lang.RuntimeException.RuntimeException

Class java.lang.SafeVarargs

Method or Field: java.lang.Short.compare

Method or Field: java.lang.System.lineSeparator

Method or Field: java.lang.Throwable.Throwable

Method or Field: java.net.HttpURLConnection.fixedContentLengthLong

Method or Field: java.net.InetAddress.getLoopbackAddress

Method or Field: java.net.InetSocketAddress.getHostString

Method or Field: java.net.NetworkInterface.getIndex

Class java.net.ProtocolFamily

Class java.net.SocketOption

Class java.net.StandardProtocolFamily

Class java.net.StandardSocketOptions

Method or Field: java.net.URLClassLoader.getResourceAsStream

Class java.nio.channels.AcceptPendingException

Class java.nio.channels.AlreadyBoundException

Class java.nio.channels.AsynchronousByteChannel

Class java.nio.channels.AsynchronousChannel

Class java.nio.channels.AsynchronousChannelGroup

Class java.nio.channels.AsynchronousFileChannel

Class java.nio.channels.AsynchronousServerSocketChannel

Class java.nio.channels.AsynchronousSocketChannel

Method or Field: java.nio.channels.Channels.newInputStream

Class java.nio.channels.CompletionHandler

Method or Field: java.nio.channels.DatagramChannel.open

Method or Field: java.nio.channels.FileChannel.open

Method or Field: java.nio.channels.FileLock.FileLock

Class java.nio.channels.IllegalChannelGroupException

Class java.nio.channels.InterruptedByTimeoutException

Class java.nio.channels.MembershipKey

Class java.nio.channels.MulticastChannel

Class java.nio.channels.NetworkChannel

Class java.nio.channels.ReadPendingException

Class java.nio.channels.SeekableByteChannel

Method or Field: java.nio.channels.ServerSocketChannel.bind

Class java.nio.channels.ShutdownChannelGroupException

Method or Field: java.nio.channels.SocketChannel.bind

Class java.nio.channels.spi.AsynchronousChannelProvider

Method or Field: java.nio.channels.spi.SelectorProvider.openDatagramChannel

Class java.nio.channels.WritePendingException

Class java.nio.charset.StandardCharsets

Class java.nio.file.AccessDeniedException

Class java.nio.file.AccessMode

Class java.nio.file.AtomicMoveNotSupportedException

Class java.nio.file.attribute.AclEntry.Builder

Class java.nio.file.attribute.AclEntry

Class java.nio.file.attribute.AclEntryFlag

Class java.nio.file.attribute.AclEntryPermission

Class java.nio.file.attribute.AclEntryType

Class java.nio.file.attribute.AclFileAttributeView

Class java.nio.file.attribute.AttributeView

Class java.nio.file.attribute.BasicFileAttributes

Class java.nio.file.attribute.BasicFileAttributeView

Class java.nio.file.attribute.DosFileAttributes

Class java.nio.file.attribute.DosFileAttributeView

Class java.nio.file.attribute.FileAttribute

Class java.nio.file.attribute.FileAttributeView

Class java.nio.file.attribute.FileOwnerAttributeView

Class java.nio.file.attribute.FileStoreAttributeView

Class java.nio.file.attribute.FileTime

Class java.nio.file.attribute.GroupPrincipal

Class java.nio.file.attribute.PosixFileAttributes

Class java.nio.file.attribute.PosixFileAttributeView

Class java.nio.file.attribute.PosixFilePermission

Class java.nio.file.attribute.PosixFilePermissions

Class java.nio.file.attribute.UserDefinedFileAttributeView

Class java.nio.file.attribute.UserPrincipal

Class java.nio.file.attribute.UserPrincipalLookupService

Class java.nio.file.attribute.UserPrincipalNotFoundException

Class java.nio.file.ClosedDirectoryStreamException

Class java.nio.file.CopyOption

Class java.nio.file.DirectoryIteratorException

Class java.nio.file.DirectoryNotEmptyException

Class java.nio.file.DirectoryStream.Filter

Class java.nio.file.DirectoryStream

Class java.nio.file.FileAlreadyExistsException

Class java.nio.file.Files

Class java.nio.file.FileStore

Class java.nio.file.FileSystem

Class java.nio.file.FileSystemException

Class java.nio.file.FileSystemLoopException

Class java.nio.file.FileSystems

Class java.nio.file.FileVisitOption

Class java.nio.file.FileVisitor

Class java.nio.file.FileVisitResult

Class java.nio.file.LinkOption

Class java.nio.file.LinkPermission

Class java.nio.file.NoSuchFileException

Class java.nio.file.NotDirectoryException

Class java.nio.file.NotLinkException

Class java.nio.file.OpenOption

Class java.nio.file.Path

Class java.nio.file.PathMatcher

Class java.nio.file.Paths

Class java.nio.file.SecureDirectoryStream

Class java.nio.file.SimpleFileVisitor

Class java.nio.file.spi.FileSystemProvider

Class java.nio.file.spi.FileTypeDetector

Class java.nio.file.StandardCopyOption

Class java.nio.file.StandardOpenOption

Class java.nio.file.StandardWatchEventKinds

Class java.nio.file.Watchable

Class java.nio.file.WatchEvent

Class java.nio.file.WatchEvent.Kind

Class java.nio.file.WatchEvent.Modifier

Class java.nio.file.WatchKey

Class java.nio.file.WatchService

Class java.security.AlgorithmConstraints

Class java.security.cert.CertificateRevokedException

Class java.security.cert.CertPathValidatorException.BasicReason

Method or Field: java.security.cert.CertPathValidatorException.CertPathValidatorException

Class java.security.cert.CertPathValidatorException.Reason

Class java.security.cert.CRLReason

Class java.security.cert.Extension

Class java.security.cert.PKIXReason

Method or Field: java.security.cert.X509CRLEntry.getRevocationReason

Class java.security.CryptoPrimitive

Method or Field: java.sql.CallableStatement.getObject

Method or Field: java.sql.Connection.setSchema

Method or Field: java.sql.DatabaseMetaData.getPseudoColumns

Method or Field: java.sql.Driver.getParentLogger

Class java.sql.PseudoColumnUsage

Method or Field: java.sql.ResultSet.getObject

Method or Field: java.sql.Statement.closeOnCompletion

Method or Field: java.util.BitSet.valueOf

Method or Field: java.util.Calendar.isWeekDateSupported

Method or Field: java.util.Collections.emptyIterator

Class java.util.concurrent.ConcurrentLinkedDeque

Class java.util.concurrent.ForkJoinPool

Class java.util.concurrent.ForkJoinTask

Class java.util.concurrent.ForkJoinWorkerThread

Class java.util.concurrent.LinkedTransferQueue

Method or Field: java.util.concurrent.locks.AbstractQueuedLongSynchronizer.hasQueuedPredecessors

Method or Field: java.util.concurrent.locks.AbstractQueuedSynchronizer.hasQueuedPredecessors

Class java.util.concurrent.Phaser

Class java.util.concurrent.RecursiveAction

Class java.util.concurrent.RecursiveTask

Method or Field: java.util.concurrent.ScheduledThreadPoolExecutor.setRemoveOnCancelPolicy

Class java.util.concurrent.ThreadLocalRandom

Class java.util.concurrent.TransferQueue

Method or Field: java.util.ConcurrentModificationException.ConcurrentModificationException

Method or Field: java.util.Currency.getAvailableCurrencies

Method or Field: java.util.GregorianCalendar.isWeekDateSupported

Class java.util.IllformedLocaleException

Class java.util.Locale.Builder

Class java.util.Locale.Category

Method or Field: java.util.Locale.PRIVATE_USE_EXTENSION

Method or Field: java.util.logging.Logger.getGlobal

Class java.util.Objects

Method or Field: java.util.regex.Matcher.group

Method or Field: java.util.regex.Pattern.UNICODE_CHARACTER_CLASS

Method or Field: java.util.Scanner.Scanner

Method or Field: java.util.SimpleTimeZone.observesDaylightTime

Method or Field: java.util.spi.CurrencyNameProvider.getDisplayName

Method or Field: java.util.spi.LocaleNameProvider.getDisplayScript

Method or Field: java.util.TimeZone.observesDaylightTime

Method or Field: java.util.zip.Deflater.NO_FLUSH

Method or Field: java.util.zip.DeflaterOutputStream.DeflaterOutputStream

Method or Field: java.util.zip.GZIPOutputStream.GZIPOutputStream

Method or Field: java.util.zip.ZipFile.ZipFile

Method or Field: java.util.zip.ZipInputStream.ZipInputStream

Method or Field: java.util.zip.ZipOutputStream.ZipOutputStream

Class javax.crypto.AEADBadTagException

Method or Field: javax.crypto.Cipher.updateAAD

Method or Field: javax.crypto.CipherSpi.engineUpdateAAD

Class javax.crypto.spec.GCMParameterSpec

Method or Field: javax.lang.model.element.ElementKind.RESOURCE_VARIABLE

Class javax.lang.model.element.Parameterizable

Class javax.lang.model.element.QualifiedNameable

Method or Field: javax.lang.model.SourceVersion.RELEASE_7

Method or Field: javax.lang.model.type.TypeKind.UNION

Method or Field: javax.lang.model.type.TypeVisitor.visitUnion

Class javax.lang.model.type.UnionType

Class javax.lang.model.UnknownEntityException

Class javax.lang.model.util.AbstractAnnotationValueVisitor7

Class javax.lang.model.util.AbstractElementVisitor7

Method or Field: javax.lang.model.util.AbstractTypeVisitor6.visitUnion

Class javax.lang.model.util.AbstractTypeVisitor7

Method or Field: javax.lang.model.util.ElementKindVisitor6.visitVariableAsResourceVariable

Class javax.lang.model.util.ElementKindVisitor7

Class javax.lang.model.util.ElementScanner7

Class javax.lang.model.util.SimpleAnnotationValueVisitor7

Class javax.lang.model.util.SimpleElementVisitor7

Class javax.lang.model.util.SimpleTypeVisitor7

Class javax.lang.model.util.TypeKindVisitor7

Class javax.net.ssl.ExtendedSSLSession

Method or Field: javax.net.ssl.SSLEngine.getHandshakeSession

Method or Field: javax.net.ssl.SSLParameters.getAlgorithmConstraints

Method or Field: javax.net.ssl.SSLServerSocket.getSSLParameters

Method or Field: javax.net.ssl.SSLSocket.getHandshakeSession

Class javax.net.ssl.X509ExtendedTrustManager

Class javax.print.attribute.standard.DialogTypeSelection

Method or Field: javax.rmi.ssl.SslRMIServerSocketFactory.SslRMIServerSocketFactory

Class javax.security.auth.kerberos.KeyTab

Method or Field: javax.sound.midi.MetaMessage.MetaMessage

Class javax.sound.midi.MidiDeviceReceiver

Class javax.sound.midi.MidiDeviceTransmitter

Method or Field: javax.sound.midi.ShortMessage.ShortMessage

Method or Field: javax.sound.midi.SysexMessage.SysexMessage

Method or Field: javax.sound.sampled.AudioFormat.Encoding.PCM_FLOAT

Method or Field: javax.sql.CommonDataSource.getParentLogger

Class javax.sql.rowset.RowSetFactory

Class javax.sql.rowset.RowSetProvider

Class javax.swing.border.StrokeBorder

Method or Field: javax.swing.BorderFactory.createLineBorder

Method or Field: javax.swing.event.HyperlinkEvent.HyperlinkEvent

Class javax.swing.JLayer

Method or Field: javax.swing.JList.getSelectedValuesList

Method or Field: javax.swing.JSlider.imageUpdate

Method or Field: javax.swing.JTree.EmptySelectionModel.setSelectionMode

Method or Field: javax.swing.plaf.basic.BasicColorChooserUI.uninstallPreviewPanel

Method or Field: javax.swing.plaf.basic.BasicComboBoxUI.squareButton

Method or Field: javax.swing.plaf.basic.BasicFileChooserUI.createUI

Method or Field: javax.swing.plaf.basic.BasicMenuItemUI.acceleratorDelimiter

Method or Field: javax.swing.plaf.basic.BasicScrollBarUI.scrollBarWidth

Method or Field: javax.swing.plaf.basic.BasicTreeUI.isDropLine

Method or Field: javax.swing.plaf.FileChooserUI.getDefaultButton

Class javax.swing.plaf.LayerUI

Method or Field: javax.swing.plaf.nimbus.NimbusLookAndFeel.shouldUpdateStyleOnEvent

Class javax.swing.plaf.synth.SynthButtonUI

Class javax.swing.plaf.synth.SynthCheckBoxMenuItemUI

Class javax.swing.plaf.synth.SynthCheckBoxUI

Class javax.swing.plaf.synth.SynthColorChooserUI

Class javax.swing.plaf.synth.SynthComboBoxUI

Class javax.swing.plaf.synth.SynthDesktopIconUI

Class javax.swing.plaf.synth.SynthDesktopPaneUI

Class javax.swing.plaf.synth.SynthEditorPaneUI

Class javax.swing.plaf.synth.SynthFormattedTextFieldUI

Class javax.swing.plaf.synth.SynthInternalFrameUI

Class javax.swing.plaf.synth.SynthLabelUI

Class javax.swing.plaf.synth.SynthListUI

Method or Field: javax.swing.plaf.synth.SynthLookAndFeel.shouldUpdateStyleOnEvent

Class javax.swing.plaf.synth.SynthMenuBarUI

Class javax.swing.plaf.synth.SynthMenuItemUI

Class javax.swing.plaf.synth.SynthMenuUI

Class javax.swing.plaf.synth.SynthOptionPaneUI

Class javax.swing.plaf.synth.SynthPanelUI

Class javax.swing.plaf.synth.SynthPasswordFieldUI

Class javax.swing.plaf.synth.SynthPopupMenuUI

Class javax.swing.plaf.synth.SynthProgressBarUI

Class javax.swing.plaf.synth.SynthRadioButtonMenuItemUI

Class javax.swing.plaf.synth.SynthRadioButtonUI

Class javax.swing.plaf.synth.SynthRootPaneUI

Class javax.swing.plaf.synth.SynthScrollBarUI

Class javax.swing.plaf.synth.SynthScrollPaneUI

Class javax.swing.plaf.synth.SynthSeparatorUI

Class javax.swing.plaf.synth.SynthSliderUI

Class javax.swing.plaf.synth.SynthSpinnerUI

Class javax.swing.plaf.synth.SynthSplitPaneUI

Class javax.swing.plaf.synth.SynthTabbedPaneUI

Class javax.swing.plaf.synth.SynthTableHeaderUI

Class javax.swing.plaf.synth.SynthTableUI

Class javax.swing.plaf.synth.SynthTextAreaUI

Class javax.swing.plaf.synth.SynthTextFieldUI

Class javax.swing.plaf.synth.SynthTextPaneUI

Class javax.swing.plaf.synth.SynthToggleButtonUI

Class javax.swing.plaf.synth.SynthToolBarUI

Class javax.swing.plaf.synth.SynthToolTipUI

Class javax.swing.plaf.synth.SynthTreeUI

Class javax.swing.plaf.synth.SynthUI

Class javax.swing.plaf.synth.SynthViewportUI

Method or Field: javax.swing.SwingUtilities.getUnwrappedParent

Method or Field: javax.swing.text.DefaultStyledDocument.removeElement

Method or Field: javax.swing.text.html.HTMLFrameHyperlinkEvent.HTMLFrameHyperlinkEvent

Method or Field: javax.swing.text.JTextComponent.saveComposedText

Method or Field: javax.swing.tree.DefaultTreeCellRenderer.updateUI

Method or Field: javax.xml.XMLConstants.ACCESS_EXTERNAL_DTD

Method or Field: serialized-form.files

##New stuff in Java 1.8

Method or Field: java.awt.KeyboardFocusManager.clearFocusOwner

Method or Field: java.io.BufferedReader.lines

Class java.io.UncheckedIOException

Method or Field: java.lang.annotation.ElementType.TYPE_PARAMETER

Class java.lang.annotation.Native

Class java.lang.annotation.Repeatable

Method or Field: java.lang.Boolean.hashCode

Method or Field: java.lang.Byte.BYTES

Method or Field: java.lang.Character.BYTES

Method or Field: java.lang.Character.UnicodeBlock.ARABIC_EXTENDED_A

Method or Field: java.lang.CharSequence.chars

Method or Field: java.lang.Class.toGenericString

Method or Field: java.lang.Double.BYTES

Method or Field: java.lang.Float.BYTES

Class java.lang.FunctionalInterface

Method or Field: java.lang.Integer.BYTES

Method or Field: java.lang.InternalError.InternalError

Class java.lang.invoke.MethodHandleInfo

Method or Field: java.lang.invoke.MethodHandles.reflectAs

Method or Field: java.lang.invoke.MethodHandles.Lookup.revealDirect

Method or Field: java.lang.Iterable.forEach

Method or Field: java.lang.Long.BYTES

Method or Field: java.lang.management.LockInfo.from

Method or Field: java.lang.Math.addExact

Method or Field: java.lang.Package.getAnnotationsByType

Method or Field: java.lang.Process.waitFor

Method or Field: java.lang.reflect.AccessibleObject.getAnnotationsByType

Class java.lang.reflect.AnnotatedArrayType

Method or Field: java.lang.reflect.AnnotatedElement.getAnnotationsByType

Class java.lang.reflect.AnnotatedParameterizedType

Class java.lang.reflect.AnnotatedType

Class java.lang.reflect.AnnotatedTypeVariable

Class java.lang.reflect.AnnotatedWildcardType

Method or Field: java.lang.reflect.Constructor.getAnnotatedReturnType

Class java.lang.reflect.Executable

Method or Field: java.lang.reflect.Field.getAnnotationsByType

Class java.lang.reflect.MalformedParametersException

Method or Field: java.lang.reflect.Method.isDefault

Method or Field: java.lang.reflect.Modifier.parameterModifiers

Class java.lang.reflect.Parameter

Method or Field: java.lang.reflect.Type.getTypeName

Method or Field: java.lang.reflect.TypeVariable.getAnnotatedBounds

Method or Field: java.lang.Short.BYTES

Method or Field: java.lang.StrictMath.addExact

Method or Field: java.lang.String.join

Method or Field: java.lang.ThreadLocal.withInitial

Method or Field: java.lang.VirtualMachineError.VirtualMachineError

Method or Field: java.math.BigInteger.longValueExact

Class java.net.URLPermission

Method or Field: java.nio.file.attribute.FileTime.from

Method or Field: java.nio.file.Files.newBufferedReader

Method or Field: java.security.AccessController.doPrivileged

Method or Field: java.security.cert.Certificate.verify

Method or Field: java.security.cert.CertPathBuilder.getRevocationChecker

Method or Field: java.security.cert.CertPathBuilderSpi.engineGetRevocationChecker

Class java.security.cert.CertPathChecker

Method or Field: java.security.cert.CertPathValidator.getRevocationChecker

Method or Field: java.security.cert.CertPathValidatorSpi.engineGetRevocationChecker

Class java.security.cert.PKIXRevocationChecker

Method or Field: java.security.cert.X509Certificate.verify

Method or Field: java.security.cert.X509CRL.verify

Class java.security.DomainLoadStoreParameter

Class java.security.KeyStore.Entry.Attribute

Method or Field: java.security.KeyStore.Entry.getAttributes

Method or Field: java.security.KeyStore.PasswordProtection.PasswordProtection

Method or Field: java.security.KeyStore.PrivateKeyEntry.PrivateKeyEntry

Method or Field: java.security.KeyStore.SecretKeyEntry.SecretKeyEntry

Method or Field: java.security.KeyStore.TrustedCertificateEntry.TrustedCertificateEntry

Class java.security.PKCS12Attribute

Method or Field: java.security.Principal.implies

Method or Field: java.security.Provider.putIfAbsent

Method or Field: java.security.SecureRandom.getInstanceStrong

Method or Field: java.sql.BatchUpdateException.BatchUpdateException

Method or Field: java.sql.CallableStatement.setObject

Method or Field: java.sql.DatabaseMetaData.getMaxLogicalLobSize

Method or Field: java.sql.Date.valueOf

Class java.sql.DriverAction

Method or Field: java.sql.DriverManager.registerDriver

Class java.sql.JDBCType

Method or Field: java.sql.PreparedStatement.setObject

Method or Field: java.sql.ResultSet.updateObject

Method or Field: java.sql.SQLInput.readObject

Method or Field: java.sql.SQLOutput.writeObject

Class java.sql.SQLType

Method or Field: java.sql.Statement.getLargeUpdateCount

Method or Field: java.sql.Time.valueOf

Method or Field: java.sql.Timestamp.valueOf

Method or Field: java.sql.Types.REF_CURSOR

Class java.time.chrono.AbstractChronology

Class java.time.chrono.ChronoLocalDate

Class java.time.chrono.ChronoLocalDateTime

Class java.time.chrono.Chronology

Class java.time.chrono.ChronoPeriod

Class java.time.chrono.ChronoZonedDateTime

Class java.time.chrono.Era

Class java.time.chrono.HijrahChronology

Class java.time.chrono.HijrahDate

Class java.time.chrono.HijrahEra

Class java.time.chrono.IsoChronology

Class java.time.chrono.IsoEra

Class java.time.chrono.JapaneseChronology

Class java.time.chrono.JapaneseDate

Class java.time.chrono.JapaneseEra

Class java.time.chrono.MinguoChronology

Class java.time.chrono.MinguoDate

Class java.time.chrono.MinguoEra

Class java.time.chrono.ThaiBuddhistChronology

Class java.time.chrono.ThaiBuddhistDate

Class java.time.chrono.ThaiBuddhistEra

Class java.time.Clock

Class java.time.DateTimeException

Class java.time.DayOfWeek

Class java.time.Duration

Class java.time.format.DateTimeFormatter

Class java.time.format.DateTimeFormatterBuilder

Class java.time.format.DateTimeParseException

Class java.time.format.DecimalStyle

Class java.time.format.FormatStyle

Class java.time.format.ResolverStyle

Class java.time.format.SignStyle

Class java.time.Instant

Class java.time.LocalDate

Class java.time.LocalDateTime

Class java.time.LocalTime

Class java.time.Month

Class java.time.MonthDay

Class java.time.OffsetDateTime

Class java.time.OffsetTime

Class java.time.Period

Class java.time.temporal.ChronoField

Class java.time.temporal.ChronoUnit

Class java.time.temporal.IsoFields

Class java.time.temporal.JulianFields

Class java.time.temporal.Temporal

Class java.time.temporal.TemporalAccessor

Class java.time.temporal.TemporalAdjuster

Class java.time.temporal.TemporalAdjusters

Class java.time.temporal.TemporalAmount

Class java.time.temporal.TemporalField

Class java.time.temporal.TemporalQueries

Class java.time.temporal.TemporalQuery

Class java.time.temporal.TemporalUnit

Class java.time.temporal.UnsupportedTemporalTypeException

Class java.time.temporal.ValueRange

Class java.time.temporal.WeekFields

Class java.time.Year

Class java.time.YearMonth

Class java.time.zone.ZoneOffsetTransition

Class java.time.zone.ZoneOffsetTransitionRule

Class java.time.zone.ZoneRules

Class java.time.zone.ZoneRulesException

Class java.time.zone.ZoneRulesProvider

Class java.time.ZonedDateTime

Class java.time.ZoneId

Class java.time.ZoneOffset

Method or Field: java.util.ArrayDeque.spliterator

Method or Field: java.util.ArrayList.spliterator

Method or Field: java.util.Arrays.parallelSort

Class java.util.Base64.Decoder

Class java.util.Base64.Encoder

Class java.util.Base64

Method or Field: java.util.BitSet.stream

Class java.util.Calendar.Builder

Method or Field: java.util.Calendar.NARROW_FORMAT

Method or Field: java.util.Collection.removeIf

Method or Field: java.util.Collections.unmodifiableNavigableSet

Method or Field: java.util.Comparator.reversed

Method or Field: java.util.concurrent.ArrayBlockingQueue.spliterator

Method or Field: java.util.concurrent.atomic.AtomicInteger.getAndUpdate

Method or Field: java.util.concurrent.atomic.AtomicIntegerArray.getAndUpdate

Method or Field: java.util.concurrent.atomic.AtomicIntegerFieldUpdater.getAndUpdate

Method or Field: java.util.concurrent.atomic.AtomicLong.getAndUpdate

Method or Field: java.util.concurrent.atomic.AtomicLongArray.getAndUpdate

Method or Field: java.util.concurrent.atomic.AtomicLongFieldUpdater.getAndUpdate

Method or Field: java.util.concurrent.atomic.AtomicReference.getAndUpdate

Method or Field: java.util.concurrent.atomic.AtomicReferenceArray.getAndUpdate

Method or Field: java.util.concurrent.atomic.AtomicReferenceFieldUpdater.getAndUpdate

Class java.util.concurrent.atomic.DoubleAccumulator

Class java.util.concurrent.atomic.DoubleAdder

Class java.util.concurrent.atomic.LongAccumulator

Class java.util.concurrent.atomic.LongAdder

Class java.util.concurrent.CompletableFuture.AsynchronousCompletionTask

Class java.util.concurrent.CompletableFuture

Class java.util.concurrent.CompletionException

Class java.util.concurrent.CompletionStage

Method or Field: java.util.concurrent.ConcurrentHashMap.mappingCount

Class java.util.concurrent.ConcurrentHashMap.KeySetView

Method or Field: java.util.concurrent.ConcurrentLinkedDeque.spliterator

Method or Field: java.util.concurrent.ConcurrentLinkedQueue.spliterator

Method or Field: java.util.concurrent.ConcurrentMap.getOrDefault

Method or Field: java.util.concurrent.ConcurrentSkipListMap.getOrDefault

Method or Field: java.util.concurrent.ConcurrentSkipListSet.spliterator

Method or Field: java.util.concurrent.CopyOnWriteArrayList.spliterator

Method or Field: java.util.concurrent.CopyOnWriteArraySet.spliterator

Class java.util.concurrent.CountedCompleter

Method or Field: java.util.concurrent.Executors.newWorkStealingPool

Method or Field: java.util.concurrent.ForkJoinPool.commonPool

Method or Field: java.util.concurrent.ForkJoinTask.quietlyComplete

Method or Field: java.util.concurrent.LinkedBlockingDeque.spliterator

Method or Field: java.util.concurrent.LinkedBlockingQueue.spliterator

Method or Field: java.util.concurrent.LinkedTransferQueue.spliterator

Class java.util.concurrent.locks.StampedLock

Method or Field: java.util.concurrent.PriorityBlockingQueue.spliterator

Method or Field: java.util.concurrent.SynchronousQueue.spliterator

Method or Field: java.util.concurrent.ThreadLocalRandom.ints

Method or Field: java.util.Date.from

Class java.util.DoubleSummaryStatistics

Class java.util.function.BiConsumer

Class java.util.function.BiFunction

Class java.util.function.BinaryOperator

Class java.util.function.BiPredicate

Class java.util.function.BooleanSupplier

Class java.util.function.Consumer

Class java.util.function.DoubleBinaryOperator

Class java.util.function.DoubleConsumer

Class java.util.function.DoubleFunction

Class java.util.function.DoublePredicate

Class java.util.function.DoubleSupplier

Class java.util.function.DoubleToIntFunction

Class java.util.function.DoubleToLongFunction

Class java.util.function.DoubleUnaryOperator

Class java.util.function.Function

Class java.util.function.IntBinaryOperator

Class java.util.function.IntConsumer

Class java.util.function.IntFunction

Class java.util.function.IntPredicate

Class java.util.function.IntSupplier

Class java.util.function.IntToDoubleFunction

Class java.util.function.IntToLongFunction

Class java.util.function.IntUnaryOperator

Class java.util.function.LongBinaryOperator

Class java.util.function.LongConsumer

Class java.util.function.LongFunction

Class java.util.function.LongPredicate

Class java.util.function.LongSupplier

Class java.util.function.LongToDoubleFunction

Class java.util.function.LongToIntFunction

Class java.util.function.LongUnaryOperator

Class java.util.function.ObjDoubleConsumer

Class java.util.function.ObjIntConsumer

Class java.util.function.ObjLongConsumer

Class java.util.function.Predicate

Class java.util.function.Supplier

Class java.util.function.ToDoubleBiFunction

Class java.util.function.ToDoubleFunction

Class java.util.function.ToIntBiFunction

Class java.util.function.ToIntFunction

Class java.util.function.ToLongBiFunction

Class java.util.function.ToLongFunction

Class java.util.function.UnaryOperator

Method or Field: java.util.GregorianCalendar.getCalendarType

Method or Field: java.util.HashSet.spliterator

Class java.util.IntSummaryStatistics

Method or Field: java.util.Iterator.forEachRemaining

Method or Field: java.util.LinkedHashSet.spliterator

Method or Field: java.util.LinkedList.spliterator

Method or Field: java.util.List.replaceAll

Class java.util.Locale.FilteringMode

Method or Field: java.util.Locale.hasExtensions

Class java.util.Locale.LanguageRange

Method or Field: java.util.logging.Logger.log

Class java.util.LongSummaryStatistics

Method or Field: java.util.Map.Entry.comparingByKey

Method or Field: java.util.Map.getOrDefault

Method or Field: java.util.Objects.isNull

Class java.util.Optional

Class java.util.OptionalDouble

Class java.util.OptionalInt

Class java.util.OptionalLong

Class java.util.PrimitiveIterator

Class java.util.PrimitiveIterator.OfDouble

Class java.util.PrimitiveIterator.OfInt

Class java.util.PrimitiveIterator.OfLong

Method or Field: java.util.PriorityQueue.PriorityQueue

Method or Field: java.util.Random.ints

Method or Field: java.util.regex.Matcher.start

Method or Field: java.util.regex.Pattern.asPredicate

Method or Field: java.util.ResourceBundle.getBaseBundleName

Method or Field: java.util.Set.spliterator

Method or Field: java.util.SortedSet.spliterator

Class java.util.spi.CalendarDataProvider

Class java.util.spi.CalendarNameProvider

Method or Field: java.util.spi.LocaleServiceProvider.isSupportedLocale

Class java.util.spi.ResourceBundleControlProvider

Method or Field: java.util.spi.TimeZoneNameProvider.getGenericDisplayName

Class java.util.Spliterator

Class java.util.Spliterator.OfDouble

Class java.util.Spliterator.OfInt

Class java.util.Spliterator.OfLong

Class java.util.Spliterator.OfPrimitive

Class java.util.Spliterators.AbstractDoubleSpliterator

Class java.util.Spliterators.AbstractIntSpliterator

Class java.util.Spliterators.AbstractLongSpliterator

Class java.util.Spliterators.AbstractSpliterator

Class java.util.Spliterators

Class java.util.SplittableRandom

Class java.util.stream.BaseStream

Class java.util.stream.Collector

Class java.util.stream.Collectors

Class java.util.stream.DoubleStream.Builder

Class java.util.stream.DoubleStream

Class java.util.stream.IntStream.Builder

Class java.util.stream.IntStream

Class java.util.stream.LongStream.Builder

Class java.util.stream.LongStream

Class java.util.stream.Stream.Builder

Class java.util.stream.Stream

Class java.util.stream.StreamSupport

Class java.util.StringJoiner

Method or Field: java.util.TimeZone.getTimeZone

Method or Field: java.util.TreeSet.spliterator

Method or Field: java.util.Vector.spliterator

Method or Field: java.util.zip.Adler32.update

Method or Field: java.util.zip.CRC32.update

Method or Field: java.util.zip.ZipEntry.setLastModifiedTime

Method or Field: java.util.zip.ZipFile.stream

Method or Field: javax.crypto.spec.PBEParameterSpec.PBEParameterSpec

Class javax.lang.model.AnnotatedConstruct

Method or Field: javax.lang.model.element.ExecutableElement.getReceiverType

Method or Field: javax.lang.model.element.Modifier.DEFAULT

Method or Field: javax.lang.model.SourceVersion.RELEASE_8

Method or Field: javax.lang.model.type.ExecutableType.getReceiverType

Class javax.lang.model.type.IntersectionType

Method or Field: javax.lang.model.type.TypeKind.INTERSECTION

Method or Field: javax.lang.model.type.TypeVisitor.visitIntersection

Class javax.lang.model.util.AbstractAnnotationValueVisitor8

Class javax.lang.model.util.AbstractElementVisitor8

Method or Field: javax.lang.model.util.AbstractTypeVisitor6.visitIntersection

Class javax.lang.model.util.AbstractTypeVisitor8

Class javax.lang.model.util.ElementKindVisitor8

Method or Field: javax.lang.model.util.Elements.isFunctionalInterface

Class javax.lang.model.util.ElementScanner8

Class javax.lang.model.util.SimpleAnnotationValueVisitor8

Class javax.lang.model.util.SimpleElementVisitor8

Class javax.lang.model.util.SimpleTypeVisitor8

Class javax.lang.model.util.TypeKindVisitor8

Method or Field: javax.net.ssl.ExtendedSSLSession.getRequestedServerNames

Class javax.net.ssl.SNIHostName

Class javax.net.ssl.SNIMatcher

Class javax.net.ssl.SNIServerName

Method or Field: javax.net.ssl.SSLParameters.setServerNames

Method or Field: javax.net.ssl.SSLSocketFactory.createSocket

Class javax.net.ssl.StandardConstants

Method or Field: javax.security.auth.kerberos.KeyTab.getUnboundInstance

Method or Field: javax.tools.StandardLocation.NATIVE_HEADER_OUTPUT

Class javax.xml.validation.SchemaFactoryConfigurationError

Method or Field: serialized-form.listener

// Bit(!) of a hack...
// Anything with a missing @since will obviously be missed, so this may not be
// the absolute truth...
@Grab( 'net.sourceforge.nekohtml:nekohtml:1.9.20' )
import org.cyberneko.html.parsers.SAXParser
import groovy.xml.*
def run = { slurper, output, root, file, version ->
if( file.isFile() ) {
String content = file.text
if( content.indexOf( "<dd>$version</dd>" ) > 0 ) {
slurper.parseText( content ).with { dom ->
dom.'**'.find { it.name() == 'DD' && it.text() == version }.each {
def className = (file.path - root.path)[1..-1]
if( it.parent().parent().parent().parent().parent().parent().name() == 'BODY' ) {
output.writeLine "Class [${className[0..-6].replaceAll( '/', '.' )}](http://docs.oracle.com/javase/8/docs/api/$className)\n"
}
else {
def fnNameNode = it.parent().parent().H4
if( fnNameNode ) {
String fnName = fnNameNode.text()
def prev = null
fnNameNode.parent().parent().parent().children().find { aNode ->
boolean ret = aNode == fnNameNode.parent().parent()
if( !ret ) prev = aNode
ret
}
if( prev ) {
output.writeLine "Method or Field: [${className[0..-6].replaceAll( '/', '.' )}.$fnName](http://docs.oracle.com/javase/8/docs/api/$className#${prev.attributes().name})\n"
}
}
}
}
}
}
}
}
def process = { slurper, output, version ->
output.writeLine( "##New stuff in Java $version\n" )
def root = new File( '/PATH/TO/docs/api/' )
root.eachFileRecurse { file ->
run( slurper, output, root, file, version )
}
}
new XmlSlurper( new SAXParser() ).with { slurper ->
new File( '/tmp/_new.md' ).withWriter { output ->
process( slurper, output, '1.7' )
process( slurper, output, '1.8' )
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment